Let's use the osmo-gsm-tester docker image based on the
debian-stretch-jenkins instead of the later directly, since the former
has all osmo-gsm-tester required dependencies.
Change-Id: I256eeed82eef0969d93dc015e043b0417f56f52c
Avoid the following error by the Osmocom-OBS_MinGW_weekly_publish job:
rsync -avz -e 'ssh -o '\''UserKnownHostsFile=/home/osmocom-build/jenkins/workspace/Osmocom-OBS_MinGW_weekly_publish/a1/default/a2/default/a3/default/label/obs/known_hosts'\'' -p 48' /home/osmocom-build/jenkins/workspace/Osmocom-OBS_MinGW_weekly_publish/a1/default/a2/default/a3/default/label/obs/out/ binaries@ftp.osmocom.org:web-files/windows
/tmp/jenkins1809827296988933592.sh: line 164: rsync: command not found
Change-Id: Id221729a8639f817a91888898e6a08a4dbce72c6
It's been noted that jenkins job update-osmo-ci-on-slaves succeeds even
if make script called by some children function fails:
"""
../make/Makefile:57: recipe for target 'docker-build' failed
make: *** [docker-build] Terminated
make: Leaving directory '/home/osmocom-build/osmo-ci/_docker_playground/debian-stretch-jenkins'
+ exit 1
Finished: SUCCESS
"""
Change-Id: Iab9bc49eebee0f42657ff3ab5ffaa10315446440
The distribution version must not be quoted in this case (string) but
given as an integer. Otherwise it will match only on 9, but not on 10.
Change-Id: I6ff3d16d2eac891e6663e8860eec2058478f4b79
This is unfortunately harder than expected. The problem is the use
of meson external dependencies using 'wrap', specifically for
freeDiameter.
As a debian source package needs to include the entire source, the
dpkg helpers are calling 'meson --wrap-mode=nodownload' at build time.
This in turn requires us to download the freeDiameter after the git
clone of open5gs. Unfortunately this creates a git checkout in a
sub directory of the open5gs repo, which is not part of the git history.
git-buildpackage hence generates a source tarball *without*
freeDiameter. I tried very hard in several methods like
* git commit subprojects/freeDiameter
* adding subprojects/freeDiameter as git submodule
unfortuantely none of them helped.
In the end, I resorted to using 'dpkg-buildpackage' instead of
'git-buildpackage' (gbp), which then has other disadvantages,
such as not being able to determine the output directory to which
the .tar.* and .dsc files are written to.
In the end, the solution implemented here is the only one I could
make work.
Change-Id: I6752288868e5ee1378c0776b1be9f06750017c41
These directories are needed by osmo-gsm-tester to copy in some binaries
and helper files required in the remote run node.
Change-Id: I802bdcc79e7787052364f6518e868d741cb040ac
From ansible: [WARNING]: Consider using the file module with state=directory rather than running 'mkdir'.
Change-Id: I2c541878033360a9d427d13b62c1cc075d5f92b7
eclipse-titan is not currently built for ARM targets (or it fails) on
osmocom OBS repos. Let's disable it since anyway we don't need to run
ttcn3 stuff on ARM slaves.
Change-Id: I83f95766fc601bfced6404db56af3bf8b871982f
Let's avoid duplicating and having to add manually the files here every
time a new helper is required by osmo-gsm-tester.
Change-Id: Ibbdd291f4c3f7aecdd5118cc2b3b35edaddf7c09
Due to [1], we require both debian9 patchelf v0.9 and v0.10 to be
available and used by osmo-gsm-teser depending on the binary to be
patched.
[1] https://github.com/NixOS/patchelf/issues/192
Related: OS#4389
Change-Id: I28825d723b85900fb51cc5b8a9d14c6ef346e667
In I30a61aebcadef5536e74edd35e1c75ef77a2da9f, we moved the Dockerfiles
from here to docker-playground.git, but failed to adjust the ansible
playbook that wants to rebuild those containers during setting up of
a build slave.
Change-Id: Ife64fdaf24107b0b31b8a6d4c78a1df420662ca0
Related: OS#4345
Closes: OS#4377
Both are required by docker, but seem to be missing from explicit
dpkg 'Requires' :/
TASK [docker : add docker gpg key to apt keyring] ********************************************************
fatal: [rpi4-deb9build-ansible]: FAILED! => {"changed": false, "msg": "Failed to find required executable gpg in paths: /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"}
TASK [docker : cleanup old docker images] ****************************************************************
[WARNING]: The value 0 (type int) in a string field was converted to '0' (type string). If this does not
look like what you expect, quote the entire value to ensure it does not change.
fatal: [rpi4-deb9build-ansible]: FAILED! => {"changed": false, "msg": "Failed to find required executable crontab in paths: /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"}
Change-Id: I2d342f85f6bc1b80eaafc7075552019fea147894
Only for nightly, not latest, since example/sccp_demo_user is not
installed by autotools and debian packages, so only in nightly where we
build from source we are able to copy it to docker image manually.
Related: OS#4343
Change-Id: Ia0a68d74215bdc1bc6319241d60f858312fa14e9
Jenkins job builder only does one pass of variable substitution. Replace
the cmd_erlang variable with its contents, so the jobs don't fail with:
[osmocom-gerrit-debian9] $ /bin/sh -xe /tmp/jenkins7189809471369692535.sh
+ {docker_run} {docker_img_erlang} /build/contrib/jenkins.sh
/tmp/jenkins7189809471369692535.sh: 2: /tmp/jenkins7189809471369692535.sh: {docker_run}: not found
Fixes: aadc60f403 ("jobs/gerrit-verifications.yml: add erlang repos")
Related: OS#4345
Change-Id: I6e121c79ecf872a7058de3a6dc0a940fa8091f68