Now that we have the proper fix of making a clone of
osmo-gsm-manuals.git available before builds start, and not using
'osmo-build-dep.sh osmo-gsm-manuals' in the contrib/jenkins.sh files
anymore, we can remove the temporary solution. This reverts commit
4cbc445616.
Related: OS#4912
Depends: https://gerrit.osmocom.org/q/topic:jenkins-no-manuals-dep
Change-Id: I88d57ee04775dc75e6ca3152d7edfa7f47608c8a
Make sure that each time osmocom-nightly-packages.sh and
osmocom-next-packages.sh runs, we get a different date appended to the
versions, even if it runs twice on the same day (e.g. because the
jenkins job was triggered manually).
This is in preparation to let all packages depend on a specific version
(with that date) of the conflicting dummy package.
DT in osmocom-latest-packages.sh is adjusted for consistency (though it
is not appended to the package versions, only used in the commit message
when pushing the latest packages).
Related: OS#4733
Change-Id: I7f08c694a549f1b3dd938a68e05082f2c31fdb92
Rename $spec to $spec_in and add $spec to hold the destination path, to
avoid constructing it multiple times below.
Related: OS#4733
Change-Id: I4f3d4f8a8bc83ff22983e49f6a496dc8318b53cd
Check if we are trying to make a package depend on itself, and skip in
that case. This happens for the osmocom-nightly etc. metapackages, as
they go through the same code path as regular packages. While at it, use
proper variable names in the function.
Add the new variable as second argument and not as third, because a
fourth argument will be added with the dependency version, and because
this order will be consistent with osmo_obs_add_rpm_spec() when it gets
extended in a future commit.
Fix the following warning:
W: osmocom-nightly source: package-depends-on-itself osmocom-nightly depends
Related: OS#4733
Change-Id: I439079c00259d73a18cb8617a3e76d05df5a7a35
Change name to osmo_obs_add_depend_deb. I'll add a _rpm function in a
future patch, and so we get consistent names.
Related: OS#4733
Change-Id: Icf444b86df993184c9fe4db8d3e67ab4bb06bd47
Move logic to create the package directory, change into it, and to put
the directory into a git repository and tag it with the package version,
into the common function. Again, in preparation to add a _rpm function.
Related: OS#4733
Change-Id: I3066147ef5469cce9d269b119d9ffa3e53f00403
Prepare to move the 'put in git repository' code from _deb to the main
function by having the pkgver available outside of the _deb function.
Change the version to 1.0.0 while at it, as it looks better than 0.0.0.
Related: OS#4733
Change-Id: Ic56ff12b5f2fe596d73b341e1e7750a9e202ed6b
Prepare to add the _rpm function by moving the debian code to its own
function and tweaking the comment above the function.
Related: OS#4733
Change-Id: Ic8d55c432c6035e7ac855cf6869d2c86ace468df
Prepare to add another function that creates similar dummy packages for
rpm (current version only works for deb).
Related: OS#4733
Change-Id: I29a5f54fe3a09610cffa0eacb5f0ad99154612f7
docker_run was duplicated for osmo-e1-hardware and no2bootloader, so the
'-e PATH' line could be removed from the global docker_run. It was
overriding the PATH, which then did not contain the path to the compiler
toolchain anymore.
This workaround is not needed anymore since de5aa17d6 ('jobs: don't
overwrite PATH in "docker run"').
Related: OS#4911
Change-Id: I97a4add17d9fa1bd28ab0ceb054b9a8d948b6f86
Use new location inside / outside docker, where the repository was
cloned already. So it does not need to be cloned during the job.
Roll out: make sure that the docker images are already built! (or let me
merge it)
Related: OS#4912
Depends: docker-playground Id402e0ea372b5ca8a6c8f6f5beb190544c888207
Change-Id: Ibe91a613162687589e006cba99193606fb8a3eb9
Make osmo-gsm-manuals.git available as ~/osmo-gsm-manuals, so it can be
used by osmo-trx and osmo-bts (the only two projects building manuals,
which are not running in docker as of writing) instead of cloning the
repository in their contrib/jenkins.sh.
A similar change to clone osmo-gsm-manuals in the debian-stretch-jenkins
image used by all other jobs that build manuals, is done in
docker-playground 7e4c8c6f1f798b9b8e57af97131ce3759528e0de.
osmo-ci's contrib/jenkins.sh is called by the update-osmo-ci-on-slaves
job.
Related: OS#4912
Change-Id: I742fd929e39ca32d6034a30af75b6c8e5b47b233
Add the variable to projects that don't use docker at all or overwrite
docker_run instead of using the global variable that has
OSMO_GSM_MANUALS_DIR defined.
Related: OS#4912
Change-Id: I65102655b4b3e907a0b0de8026f8f9af76281f90
Don't mount $HOME/bin to /build_bin, and don't overwrite PATH to include
/build_bin anymore. This isn't needed because the scripts are installed
to /usr/local/bin inside the docker images now.
Depends: docker-playground I0820f13cd740f7d4a8999d279cef6ae293a67d81
Related: OS#4911
Change-Id: I45bd7ea56849dab839a98cfd52806f7cd288094e
Save time by only cloning the repository, and not running autoreconf
-fi, ./configure, make and make install. Especially the tests during
make took up significant time, that slowed every project depending on
osmo-gsm-manuals down while being built through master-builds or
gerrit-verifications jobs. Set OSMO_GSM_MANUALS_DIR to the clone
location.
This is an interim measure, I'll submit more patches soon that remove
the 'osmo-build-dep.sh osmo-gsm-manuals' calls from all projects.
Change-Id: I5238cf3f93ded97ed2b44d27868123a646e122dc
Related: OS#4912
Gerrit verification jobs sometimes hang (usually during the VTY tests).
At some point we should just time out, default is 30 minutes
Change-Id: I6fc6ee976f2d88efdab1582a418d1adcd384c850
This will rune once per week and make sure that registry.osmocom.org
has a fpga-build container that the buld slaves can use.
Change-Id: Ie700d7c6e3c5e794edd81c3acc4b689e05d6864d
We use centos8 instead of centos in all docker-playground.git setups and
the infrastructure there expects that kind of naming.
Related: OS#4888
Change-Id: Idfbb2c4fc1ca10741406c8ab8930dabe8ce632ee
It's really annoying that OBS uses Debian_8.0 and Debian_9.0 (for 8.x
and 9.x) and then Debian_10 for 10.x. Let's work around this by some
conditional vars_file trickery, hopefully once and for all.
Change-Id: I45c4752774f44332b3f9aaf875f49043c03ec5ca
Install TTCN3 before installing build-deps, as build-deps
requires libulfius, which is only provided by network:osmocom:latest
feed, which in turn is only activated as part of the TTCN3 / TITAN
installation.
Change-Id: I66f1d5f7479a6d028abdac0cc6f4000faa78b135
podman has one particularly interesting feature which docker
rejected years ago: The ability to run a container in a pre-existing
namespace. This is quite useful for some of our test setups,
particularly those that involve hdlc net-devices
Change-Id: I4b14599f39c07ec83fa4222f9d040d443caae3e6
As of osmo-gsm-tester.git Change-Id
I938602ee890712fda82fd3f812d8edb1bcd05e08, python3-watchdog is required.
Change-Id: I35026e82b255cd4e06b4211c4829cd12be59976e
we cannot even create new slaves as lxc-create doesn't support debian
jessie anymore. Let's focus on Debian 9 + Debian 10
Change-Id: I2fddd460f7d1db755cc9b732b2be80494d26e091
The docker company official builds are only present for amd64, but not
for other architectures. Let's use the Debian docker.io package in such
situations.
Change-Id: Id85137fc0eb7fa5e2b31aa928c78bfdaadc281ac
We actually do the verification inside a (debian 9) docker container anyway,
so there's no need to run those on the old debian8 slaves.
Change-Id: I2168bd2f0e6221518ece111e29dc604c33eaca6a
If that package is not installed, adding the GPG key fails with SSL
certificate verification, at least on a debian10 i386 lxc:
TASK [add docker gpg key to apt keyring] *************************************************************
fatal: [gtp0-deb10build32-ansible]: FAILED! => {"changed": false, "msg": "Failed to download key at https://download.docker.com/linux/debian/gpg: Request failed: <urlopen error [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:1056)>"}
Change-Id: I58259a99258c9c7471e1fcf03a3a7b62fa9c6a48
Since Idba84164b90e3d183a20b5eb69cbfe15745e447c, we started to
generate separate PDFs for different osmo-bts-variants, so
let's enable them all. Otherwise only osmo-bts-{virtual,sysmo}
PDFs are generated and uploaded to the server.
Change-Id: I517be2d475f57026dab7f001d2298cf1a1aa2c7c
Related: SYS#4937
This will make the Dockerfiles from docker-playground.git
use registry.osmocom.org rather than the public docker.io for base
distribution images like debian:stretch or the like.
This will avoid any strange timeout/EOF problems while doing
docker build --pull in our test jobs.
Change-Id: If4275cf3c8a5b70a67d742950a35ae8ead59a52e
Closes: OS#4839