With this script you can now use docker ttcn3 test results to bisect a
regression and find the offending commit.
Use like this from the osmo-* git repository:
$ git bisect start <bad-rev> <good-rev>
$ git bisect run ~/scm/osmo/docker-playground/osmo-bisect.sh <component-to-test> <testcase>
e.g.:
$ git bisect run ~/scm/osmo/docker-playground/osmo-bisect.sh bsc BSC_Tests.TC_ho_in_fail_no_detect
Change-Id: I11f7e61a9b30d58a0fdfcaf77dde447806bf661f
Previously we could only set OSMO_TTCN3_BRANCH as environment variable
to build a test other than master.
This patch adds environment variables for all osmo-*-master images which
allow docker tests to be executed for an arbitrary commit.
The origin/ prefix from the git checkout command is removed so the
*_BRANCH variable doesn't have to contain branch names, but van also
contain arbitrary commits. This shouldn't have any adverse effect as we
only have one remote in the checkout.
Change-Id: If3bc5fae07cf63c4fef68306be4c4328660bc869
Don't use $WORKSPACE anymore, use $VOL_BASE_DIR like in every other
jenkins.sh in this repository. Make it possible to run jenkins.sh
outside of jenkins (where $WORKSPACE is not set), because
jenkins_common.sh will set up $VOL_BASE_DIR to point to /tmp/logs.
Change-Id: I200b4ee1760a879cbc0a80a30a062a3f2a8e703d
Make sure to build sigtran-tests before building nplab-m3ua-tests. This
has been working by coincidence without the dependency so far, because
nplab-sua-test had the dependency listed and that test ran on the same
host.
Change-Id: I9df1d2b188e86b3c99c6ec793b6eb644ab3c27c9
Don't abort with the following error, when running 'make' without
setting the PULL environment variable:
../make/Makefile:20: *** Recursive variable 'PULL' references itself (eventually). Stop.
This fixes a regression from Change-Id
I1076bbb7d77bdc99f5d60d641c09ce965fb9dfc6.
Related: OS#3869
Change-Id: I4b4772e9ed6e07ab00943154265c9cbdea22a2f5
Prevent building docker images on top of outdated Debian images, where
the package download feeds have been disabled. Use 'docker build --pull'
instead of 'docker build', whenever the "FROM" line in the Dockerfile
does not contain '$USER' (meaning this is an upstream image).
Checking the FROM line is necessary, as downloading '$USER' images will
fail (we never upload those).
Related: OS#3869
Change-Id: I1076bbb7d77bdc99f5d60d641c09ce965fb9dfc6
This is quite useful when looking at jenkins logs to know which exact
version was built at the time.
Change-Id: Id52c382b454e2beecf46820752aeff15b2c1a0ae
* remove extra NSVC config
* use 0.0.0.0 for nsvc 0
The additional nsvc and this particular address are not used for BTS'
PCU-related tests in any way and only add confusion. It's likely a
result of copy-paste from another test.
Change-Id: Ie424107672496df70fc83c8fd6cef99a312fcee7
Currently no EARFCN is set in osmo-bsc.cfg. This setting is required for
TC_chan_rel_hard_clear_csfb to function
Change-Id: I929c0b2927eb78573b7208683cf610be6be8812a
Related: OS#3852
Make the TTNC3 tests pass that were added in Change-Id
I3bab7df5caddc5c8b973c81544f954d5473ac234 (osmo-ttcn3-hacks.git).
Related: OS#2900
Change-Id: Icc1ae87d87f61e2d1d0b8c6b14d28aeed56a6931
OsmoPCU needs to have the gb-dialect parameter configured right from
startup. This means we'll split the ttcn3-pcu-test into two suites,
similarly to how we deal with AoIP / SCCPlite in the ttcn3-bsc-test.
Change-Id: I6e844f9ac4b87e801661fb1a1bdd25a15148f474
Set the OSMO_TTCN3_BRANCH build argument from ttcn3-*/Dockerfile from
the environment variable of the same name, so it can be changed when
building the images with 'make' or './jenkins.sh'.
Dockerfiles that do not have a OSMO_TCCN3_BRANCH build arg produce a
warning. But this is also the case with Dockerfiles that don't have an
USER build arg, and avoiding the warning would only be possible with a
much more complex patch.
Change-Id: If2c312ff9206d1613fc19f41bd088c9aad523684
Use the debian-jessie-build container to ensure all files under
${VOL_BASE_DIR} are readable.
Call this directly from collect_logs so we handle all ttcn3 jobs.
Fixes: OS#3800
Change-Id: I124c554eee69ec5586547d3c96b8ec571e0653a7
This will enable us to run the PCU testsuite automatically by
jenkins, just like for other Osmocom projects.
Change-Id: Ia8e2ed2e7d03b8afdc7b1e068f94b0544a8112c7
Related: OS#2890
Fix conflict in debian-repo-test-latest by not explicitly installing
soapysdr0.7:
dpkg: error processing archive /tmp/apt-dpkg-install-aYn9qf/398-soapysdr0.7-module-lms7_19.01.0-1_amd64.deb (--unpack):
trying to overwrite '/usr/lib/x86_64-linux-gnu/SoapySDR/modules0.5-2/libLMS7Support.so', which is also in package soapysdr0.5-2-module-lms7:amd64 16.12.0+dfsg-1
I have tested locally, that debian-repo-test passes with this patch with
both FEED=latest and FEED=nightly.
Related: OS#3809
Change-Id: Ic7c6b95d20345b39af2ba0d09dddd361696723be
The testsuite did not support VTY access in the past, so VTY access was
unconfigured. Lets add the required lines to the configuration files
Depends: osmo-mgw If383f81af3306f8f5bdf50152498ae1303d390df
Change-Id: Ife949c61156222de3026280071226ef6f5dbd959
Related: OS#3807
Delete legacy config lines. They have been deleted in osmo-msc.git's
example config files in [1] and [2] almost a year ago.
When running locally, osmo-msc refuses to start with these lines. The
ttcn3-msc-test dir has its own osmo-msc.cfg file, so it works there
without this patch.
$ osmo-msc
There is no such command.
Error occurred during reading the below line:
auth policy closed
<0006> msc_main.c:573 Failed to parse the config file: 'osmo-msc.cfg'
[1]: change-id I825e659da529257e5edec94d9d59f0e10c1b4c63
[2]: change-id Ie1f39e706477aaf42051877b52d4b3ae1c5f138e
Related: OS#3767
Change-Id: I101b69c5c25252cac346259d8d88f3e02bc943d6
Fix osmo-msc crash at start up:
<0009> db.c:621 Failed to create database connection to sqlite3 db 'sms.db'; Is the sqlite3 database driver for libdbi installed on this system?
DB: Failed to init database: sms.db
It would be better if the Debian package pulled in this dependency
automatically, see OS#3771.
Related: OS#3767
Change-Id: Ia816aed8dd3b86f44f4454af89cec6f0b9d55dd1
osmo-sip-connector does not have a -M argument, it was probably
confused with osmo-msc's -M, --mncc-sock-path argument.
osmo-sip-connector printed out the following when started with -M, but
otherwise functioned normally. Because it was started with Docker in
background, the message did not get written to the build log.
osmo-sip-connector: invalid option -- 'M'
Change-Id: Iee983a8aafe8cade67b76927721fc26e5af966d7
Remove hardcoded /usr/local/bin/ paths from jenkins.sh. This caused the
*-latest tests to fail, as they have the Osmocom binaries in /usr/bin
instead of /usr/local/bin.
Related: OS#3767
Change-Id: I9d1427e66028ffd15fed211b2dab5adc37718666
Do not try to run a osmocom-bb-host-latest docker image, which does not
exist as we are not tagging release versions for osmocom-bb (yet).
This was done right in the docker_images_require call at the top
already (which is why it did not try to build such a "-latest" image),
but then the script tried to use the "-latest" images anyway (instead
of hardcoding "-master").
Related: OS#3767
Change-Id: Ib743f09c71d93bf4c4ad947ef62b37de6b2d7ecc
docker_images_require() must fail when a new image can not be built,
even if an old image already exists.
We have this situation in a lot of the -latest tests right now, which
makes it harder to find the actual error.
Note that we can't simply use #!/bin/sh -e in all the jenkins.sh
scripts that source jenkins_common.sh, because they must be able to
clean up the docker containers on failure. So they can't abort
somewhere in the middle of the scripts. We could rewrite them to do the
clean up in a trap, but this should be done in a separate commit.
Related: OS#3767
Change-Id: I7039089457b62b8798a79c5efd62bd91622986d3
Since Ib2335d02ea545aff837aadd49f15b2fdb418c46e, this VTY option
is deprecated in osmo-bsc, so let's actualize the config files.
Change-Id: I709e1afd2a9cccdc92eec312dff607947a10c299
In I7736abd85407c186856be9f1a22613a1fa6e0c32 'mp_bb_trxc_ip' was
renamed to 'mp_bts_trxc_ip'. Let's correct the config.
Depends-On: (TTCN) I7736abd85407c186856be9f1a22613a1fa6e0c32
Change-Id: I886b652ddfb1afbfcf15f99672cca1d63fd714fe
Update the path to libopenid.jar, to fix the following error and make
the container build again. This change is necessary, because we are
patching a file inside "gerrit.war", and the path to that file has been
changed upstream.
Step 4/8 : RUN unzip /var/gerrit/bin/gerrit.war WEB-INF/lib/gerrit-openid-libopenid.jar ...
---> Running in 815585d87fdd
Archive: /var/gerrit/bin/gerrit.war
caution: filename not matched: WEB-INF/lib/gerrit-openid-libopenid.jar
Change-Id: Iaed2429a776ae587043dc2651293bb354fceeb72
Run the bscnat ttcn3 tests in docker. This uses the osmo-nitb-master
image since osmo-bsc_nat is built there as well.
Change-Id: Ibeebb0325d3d1976225666eb28db0741df2e66f0
Obsoleted by docker_images_require(). The top-level Makefile had the
following drawbacks:
* it was not maintained: many targets were missing, and some of the
existing ones did not build anymore
* make targets have the same names as the folders, so if they are not
listed in the Makefile, it will assume that the target has been built
already (prone to making mistakes)
Extend README.md to describe how to run tests, container caching, how
container dependencies are resolved now and the reasoning for doing
it that way instead of using a top-level Makefile.
Related: OS#3268
Change-Id: Id18a9a7a70f85127e6f6c9447d71764018bdb4ff