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
With libosmocore commit the SNS configuration requires a ip-sns-bind vty configuration
to define the binds which should be use.
Related: SYS#5354
Depends-on: I9ab8092bf286e7d90e92f5702a5404425e959c84 (libosmocore)
Change-Id: I11541540468584fc17a18fa294da5c9813c28d64
Remove commands that result in a docker error message, like in
Ie6f8270230e1f0372b63d610b7868ea8719b18ad.
Change-Id: I9dec8d27c0f09cd8ee75255c8dfa314c70387ee9
Fix error message reported by Pau:
docker: invalid reference format: repository name must be lowercase.
This happens in the "docker run" command after the "Starting container
to merge logs" message, because the arguments to --entrypoint are not in
quotation marks. The command fails.
Logs were merged anyway, because
If03422bb8fb126fe6f204a4f8bc6edf0cbb7f194 had already reverted half the
patch and added the log merging back to the Dockerfile.
This reverts commit 73663b01f2.
Change-Id: Ie6f8270230e1f0372b63d610b7868ea8719b18ad
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
Move the shared pipework script to the base image, and call it in
ttcn3-docker-run.sh if WAIT_FOR_NETDEV is set. Use ttcn3-docker-run.sh
as entrypoint in both Dockerfiles and remove the custom entrypoint
scripts (which are the same as ttcn3-docker-run.sh now).
Related: OS#5017
Change-Id: I2889abe94ed522a205890e5cb39e09cbebfbd820
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
After the initial clone of osmo-ttcn3-hacks and deps, let docker
download deps/Makefile to invalidate the cache if the file changed.
Run "git pull" and "make deps" afterwards, but only if the Makefile is
different. The "if" saves time in the initial build of the image, it
avoids the "git fetch" on every dependency repository during "make deps".
Related: OS#5017
Change-Id: I56673312cfb23375d67900016aaac1931f677275
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
We don't need to install dozens of packages that osmo-sip-connector
never had as an upstream dependency.
Change-Id: I604c9843866c100f12574f1ca37ff853a1b64f42
In Osmocom we annotate osmocom issues as OS#1234 and not just as #1234,
in order to distinguish them from redmine or coverity issues.
Change-Id: I04a97434433a022f47a759a8219458e8772ae71e
Related: OS#5005, OS#3291
On our deb10fr VMs we have the modified kernel HDLC module supporting
the frame relay MTU up to 1700 bytes, so let's extend our tests to cover
that. Mainline kernels only support 1500 bytes.
Depends: osmo-ttcn3-hacks.git I8e38ecf6b270c81bd73ee43b1fa0b259a999c14b
Change-Id: Id25532edbf5e1a918ad038723da464723d6f03f0
FRNET_Tests is not a test suite, but just a stub against which we
execute FR_Tests. Hence, we don't want it to generate a junit-xml,
as that doesn't contain any errors and only upsets our jenkins
test results analyzer, assuming the tests have failed.
Change-Id: Idec2bf8da30ccd211b21901d56979143ce3a172f
Requires: osmo-ttcn3-hacks.git Id296e62fb86731492d42370173a48f217b2fbdc0
Since Id35f40d05f3e081f32fddbf1fa34cb338db452ca, osmo-pcu also
depends on libosmoctrl. Debian based images work just fine,
because they depend on libosmocore-dev, while for CentOS we
need to specify all sub-libraries explicitly.
Change-Id: I6cccb77432b2b8fcb9f90c5205f7f1fb9dc41910
Change the whole vty configuration for NS to be more flexible
and support more setups. Old configurations are invalid.
For further information see:
https://osmocom.org/projects/libosmocore/wiki/Network_service_(NS)
Depends-on: Ie9306ab4d4738c2c57a69987086e22771b30657e (osmo-sgsn)
Change-Id: I65fb4e52d22617cf8488d8ab77c970f84995560d
the jenkins.sh script was copied from the SGSN test suite and still
mentioned sgsn at several places when actually intending to mention
gbproxy.
Change-Id: I8709121d8501da4afc1c8dda70356096d331a9b0
Prepare to add debian10-repo-install-test. Make it consistent with
centos8-repo-install-test.
Related: OS#4969
Change-Id: I2ea18997019ebaa013c258996f5131386bcd6426
Make debian-repo-install-test simpler before copying it for debian10.
Don't install Release.key, as it is getting downloaded on demand in the
related repo-install-test script since osmo-ci
I91e7a208d8f5cb50f8baa2fde0eb979aae91da8f.
Related: OS#4969
Change-Id: Ia2ba9de264531502e2b0b9f42d7a4ecd34375851
Starting from build #245 [1] all test cases fail due to DTE:
RAW_NS.ttcnpp:62 Dynamic test case error:
Text encoder: Encoding an unbound integer value.
This happens because fields 'data_weight' and 'signalling_weight'
are both unbound for two additional NS providers. Fix this.
[1] https://jenkins.osmocom.org/jenkins/view/TTCN3-centos/job/TTCN3-centos-pcu-test-sns/245/
Change-Id: I401f53bddd81e8386c01392d9a59c3b5ca8e9802
Fixes: Ic607b3edc3bf724a8b2dbd6be8c806002c229509
also, only change those values from their default values that are
neccessary to change; fall-back on the defaults whenever possible.
Change-Id: I5fba21ddf1854ed2b4f829785ab016dfa284456e
This follows the change implemented in osmo-ttcn3-hacks.git
If0e404bdf2c30a5e18748695608611be83f61109 to use data-only
and signalling-only NS-VCs on the SGSN side
Change-Id: I58f8a6d1c8d01551d366bd7d0dbfb892cce512ae
Requires: osmo-ttcn3-hacks.git If0e404bdf2c30a5e18748695608611be83f61109
Related: OS#4953
In upstream I9798e639b4bc8658482945970775b012b5840779 we introduce
two additional fields per NSVC (data_weight, signalling_weight). Make
sure those are specified everywhere.
Related: OS#4953
Requires: osmo-ttcn3-hacks.git I9798e639b4bc8658482945970775b012b5840779
Change-Id: Ic607b3edc3bf724a8b2dbd6be8c806002c229509
With the change to NS_Provider the configruation has to be extended to also include
the other nsvcs.
osmo-ttcn3-hacks: c316572db111 ("RAW_NS: rework NS connection to use NS_Provider")
Change-Id: I8020f808c06054ee38427de65b8c3867817d4ad2
PATH isn't overwritten anymore when jenkins runs docker in osmo-ci.git's
master-builds.yml / gerrit-verifications.yml, therefore we can remove
this hack.
Change-Id: I5bff98f7af1a2f2de88c8d96d1e30de960057d01
Clone osmo-ci.git, and install all files from scripts/* to
/usr/local/bin. Together with osmo-ci
I45bd7ea56849dab839a98cfd52806f7cd288094e, this will make overwriting
PATH obsolete.
Related: OS#4911
Change-Id: I0820f13cd740f7d4a8999d279cef6ae293a67d81
In commit 2279aac6 dumpcap is used to capture pcaps, but dumpcap fails
if the directory isn't writable for everyone.
Commit 62ac27779 only fixed this issue for frame relay, this simply
mirrors the change for ttcn3-gbproxy-test
Change-Id: I11dcf9efd0b06544a82e31dec03fe76e182fd0d3
Related: OS#4518 SYS#5115