Other remotes are mirrors of gerrit one, which means there's some delay
between pushing some ref to the gerrit remote and having them available
in the mirrors.
Hence, it becomes annoying while developing and new stuff to test is
pushed. Let's simply use gerrit since it's the master remote.
Change-Id: Ic87c196f8b91a3a3e6ddde2cca36482ce7070df7
These files are in .gitignore and get generated at the end of running
'make'. Remove them to have less cluttered 'git grep' output.
Change-Id: Ie5bf05220359ac0941f62cc86ed843363548784a
This uses the config files from osmo-ttcn3-hacks.git instead of keeping
local copies around here, which has shown many times will get out of
sync. Extract the original files (*.src.cfg) from the testsuite image
(ttcn3-bts-test) and merge them with the local *.confmerge files using
osmo-config-merge. Use the resulting files (*.gen.cfg).
Unfortunately, osmo-config-merge is not capable of removing text blocks
or substituting specific parts, so we fall-back to using sed where it's
needed. A good example is 'log gsmtap 127.0.0.1', as there is no
command for removing a logging target of such type.
Co-Authored-By: Vadim Yanitskiy <vyanitskiy@sysmocom.de>
Co-Authored-By: Oliver Smith <osmith@sysmocom.de>
Change-Id: If15461240f3037c142c176fc7da745a1701ae3f8
So far we were executing all our TTCN-3 tests from a container
image with Debian stretch (9) plus a custom more recent eclipse-titan
package from the osmocom feed.
Let's update the container base OS from stretch (9) to bullseye (11)
while using the same packaged eclipse-titan version (8.0.0) for running
the tests. So this should be a low-risk change, as titan runtime
remains identical.
I've executed all test suites locally and couldn't see any regressions.
Related: OS#4969
Change-Id: Ib3bdfa3bec8f8ef42c55ca61cdee8fbca923874f
It's better if we run ttcn3-bts-test with the default values, given
that they were significantly reduced some time ago.
Change-Id: If8438adfdbc506d2b6b7858ea8a0ea859ba246a1
Related: I7da3d0948f38e12342fb714b29f8edc5e9d0933d (osmo-bts)
Related: OS#4487
This enables the test suite to obtain talloc reports between the
test case executions, which get stored together with the PCAP files.
Let's see how it works with the mentioned projects first; others
can be configured later. See [1] for more details.
Change-Id: Icd4c2d80db934535d499598282ed9416d8088163
Related: [1] I1b03b17426d8760c55976e3b78ca2f3af248c055
Related: OS#5328
Write a line like 'Misc_Helpers.mp_osmo_repo := "nightly"' into the
TTCN-3 config file (e.g. BSC_Tests.cfg), before starting the testsuite.
This allows executing different code paths in the tests based on the
repository.
Related: OS#5327
Change-Id: Ic06532f7a67e59458652c5cf4c8f6fee8113e703
Otherwise the loopback address is used, what causes test cases
employing the RTP Emulation component to fail:
Connection refused (unexpected)
Change-Id: Ia20ccd9e6db61d7a105523648c678db90ad345eb
Since recently (osmo-ttcn3-hacks.git
I78880098a55d1cb456011746efa0a47832a86ca8), BTS_Tests_OML use
mp_pcu_socket to set up PCUIF, which is used in some tests (like
validating forwarding of PCUIF messages PCU<->BSC).
Related: SYS#5303
Change-Id: Iac4aac8d98e2f45021858ddaa5e20ca4c6effb31
Command line argument '-i' has been deprecated.
Change-Id: Ib01069a55a27e79c67b76abe39763c1b645075e5
Related: I17676a21c4e0c9cbc88f2c5c53a39c6c6c473ca1
Since we updated -latest to new releases, this param is never set to
true anymore. Furtermore, it will be dropped soon completely.
Related: OS#5042
Depends: osmo-ttcn3-hacks.git Change-Id I39e9c1986ea682d54dcb22b31798ca91f1677949
Change-Id: I4bda577f1ed6964a2114df1aba366177998f0854
Abort the script and trigger the clean up script, whenever any of the
commands below to prepare the testsuite are failing. This saves time
with figuring out why suddenly all or most tests are failing, and avoids
running the entire testsuite on jenkins if it's obviously not going to
work.
Related: OS#3208
Change-Id: Ie68da2affda8c96b3a515a857a921a05f1bf8ef7
Add set_clean_up_trap() in jenkins-common.sh and run it at the beginning
of the jenkins.sh files. Move the common clean up code from the end of
every jenkins.sh file into clean_up_common(), which gets called by the
trap. Add a custom clean_up() function to those jenkins.sh files that
need additional clean up.
Replace explicit container stop commands (for containers attached to the
docker network) with one call to network_clean() in clean_up_common(). It
kills all containers attached to the docker network.
The motivation for this change is the upcoming optional build of initrd
and kernel during ttcn3-ggsn-test/jenkins.sh. After building these, a
short smoke test will be performed to make sure we can boot the kernel
and initrd, before continuing to run the entire testsuite against it. If
building or the smoke test fails, we must do a proper clean up of the
network and fix permissions.
Related: OS#3208
Change-Id: I807c6221d22fec31db23e2516e477a3eb43347fb
These changes are no longer needed since master versions of whole CNI
have been recently released.
Related: OS#5042
Change-Id: I6f491b58d4576b22c8ff3ab56a7b9e17163a8739
Allow jenkins to fetch the image from our private docker registry.
Outside of jenkins, the image is built locally just like before.
Related: OS#5017
Change-Id: I46cc176ea09d8badc359b627d7ce2f459211258c
While I'm at it with tidying up the Dockerfiles, create a
ttcn3-docker-run.sh with shared run code.
Related: OS#5017
Change-Id: Id90769707158f0488eca2313c57b99ea7a4a27c8
Create symlinks to ttcn3-*-start.sh and ttcn3-*-stop.sh in the
prepare.sh script instead of in each of the ttcn3 Dockerfiles.
Related: OS#5017
Change-Id: I634cf71cff7936efe6e0461d21dc1119de922ada
Move the git fetch/checkout code and make call to build the testsuite,
to debian-stretch-titan/ttcn3-docker-prepare.sh. In the next patch, I
will extend the script to update deps right before building too (e.g.
because OSMO_TTCN3_BRANCH changed).
Related: OS#5017
Change-Id: I4b5bedf058dc527e821f9b7204c632820e671af9
Clone the osmo-ttcn3-hacks and all dependency repositories less often by
moving related commands to the shared debian-stretch-titan image.
Remove the 'git checkout -f -B master origin/master' line, because the
master branch is checked out by default.
While at it, move the shared "git config" commands too, and move them
before cloning the repositories, so they don't run again whenever the
deps change (logic to invalidate the cache if deps change will be added
in the next patch).
Related: OS#5017
Change-Id: I2bb142dce061eba4b6a828c4e435510e309989fd
Remove leftover from old TTCN-3 build scripts, before refactoring ttcn3
Dockerfiles. This line has already been removed in 357ec806 from 2017 for
ggsn-test.
In osmo-ttcn3-hacks.git, this is only referenced in the obsolete
bin/install.script (looks like we could remove that, together with the
rest of the bin dir?).
Related: OS#5017
Change-Id: Id23e7fae58ba246916a38aa0a10035d4f67f7588
There has been a lot of changes merged to both osmo-{bsc,bts}, so
now the later seems to be respawning faster then before. Because
of that, osmo-bts-trx is now reaching the limit of 500 runs on
Jenkins right in the middle of ttcn3-bts-test execution:
respawn.sh: exiting after 500 runs
causing the remaining test cases to fail due to:
"BTS_Tests.ttcn:253 : Timeout waiting for RSL bring up"
Most likely, the IUT respawns several times in the windows between
the test cases, i.e. after TITAN finishes one test case and before
it starts another. Let's instruct respawn.sh to sleep 1 second
before starting the process again.
Change-Id: I09e5a8e7c4d28424cd0d004a8bae3cf0ade2d838
In BTS_Tests_SMSCB, we dynamically configure the CBCH slots via
the VTY interface, so there is no need to set them here. This
was also the reason of some SMSCB test case failures, because
the BSC would send unexpected LOAD INDICATIONs.
Change-Id: I6e005ca772e26878c7b19df0d854936d7b7718dd
Related: SYS#4868, OS#4708
Not only append ':hopping' to classnames equal 'BTS_Tests', but
also 'BTS_Tests_SMSCB' and 'BTS_Tests_LAPDm', so they would not
shadow non-hopping test cases in the test results analyzer.
Change-Id: Ie6ed7844c2d0dfd839181bce971506284da03d28
Related: SYS#4868, OS#4546
Apparently, TITAN concatenates the contents of all sections, so
we end up with the following set of test cases:
[EXECUTE]
BTS_Tests.control
BTS_Tests_SMSCB.control
BTS_Tests_LAPDm.control
BTS_Tests.control
Change-Id: I71802daec4a5591cbf0fce59a4247027f8dfca46
Related: SYS#4868, OS#4546
Let's use separate directories to store the artifacts of different
TTCN-3 test case groups. This would prevent the test suite from
overwriting *.log and *.pcap files when running both generic and
hopping configurations together, and simplify the overall hierarchy.
Change-Id: I7c41cfb395047433e22e9c65c8c00ae284717b32
Related: SYS#4868, OS#4546
We previously only allocated IPv4 sub-nets to the network segments
created with 'docker network'. Let's fix that by assigning both
IPv4 and IPv6 address ranges to each docker network.
Related: OS#4700
Change-Id: I8802208fddcce1ffa57e5626575d23d02b320d99
As it turns out, test cases from BTS_Tests_SMSCB configure the
CBCH slots "on the fly" depending on the test case parameters.
This configuration also makes some test cases fail, so let's
(re)configure SDCCH8+CBCH timeslots to SDCCH8.
Change-Id: I3699450542dc1350971fbf87ad60a330428dec27
Since osmo-bts.git 0a6bdb024f5429a35c56178496158c9b1c3ee032, the process
is quickly terminated during shutdown if no TRX is running. Since in the
OML tests the TTCN3 components implements the OML IPA server side, most
of the time when osmo-bts starts it finds no one listening on the
address and exits immediately. This makes respawn.sh script run osmo-bts
lots of times per seconds (since osmo-bts terminates quicker now). As a
result, it quickly consumes the 500 launch threshold and exits without
starting osmo-bts being launched anymore.
As a result, only first tests pass, and all the later ones fail because
osmo-bts never connects.
Let's add a sleep 1 between respawns in respawn.sh only when running OML
tests (not needed in the others since there's an osmo-bsc always
running). This also clears a lot of output in the logs of osmo-bts
processes restarting over and over again.
Change-Id: I10d3e1ef8325dd78f9ae2b95fbfd1c6d893bf8a4
The test mentioned above is added in osmo-ttcn3-hacks.git
Ieb7444c6312bbeab64da2732393b3facf3e1f003.
config files are updated to make sense:
* "nominal power" in osmo-bsc.cfg reflects correct default nominal tx
power of fake_trx.
* "osmotrx tx-attenuation" in osmo-bts.cfg is removed to let osmo-bts
use the value received through OML (max_power_red 20).
* "power-ramp step-size" in osmo-bts.cfg is increased to speed up the
test. There's no good reason to keep it lower.
Change-Id: I878d329dde3d2089ee3b68f56271fcb88d210025