Build debian-stretch-obs-latest instead of debian-stretch-build, before
building debian-stretch-build-dist.
Depends: docker-playground I2cf6ed732e55b8f0e63bd8fc040749bd16676d0f
Change-Id: I4189ab1bf483f0a31ffdb35af0d42fe2e9a72a90
Enable ntpd to prevent clock difference issues reported by jenkins. I
just saw them appearing with one of the new raspberry pis.
Related: https://jenkins.osmocom.org/jenkins/computer/ (shows clock diff)
Change-Id: I2685e60221b0f3baa3f9e6076c01acf37cd38444
Don't wipe the workspace of kernel tests. Cloning the kernel sources
takes a great amount of time and traffic, so we want to keep them
around.
Change-Id: Ifbf6ea127011d8c9fc5c08b584d99ea0220c3e1a
Build both of them in docker, like most other projects.
Depends: docker-playground Ieec31fd6a2034c4430be81afd1d370816cd577d5
Related: OS#5055
Change-Id: Ifc11730192b852d3760a31a561efc61a1a853674
Add a new subtask that deletes Raspbian's default user "pi" with
UID=1000, so we can use the UID for the jenkins user. When the ansible
playbook is running, root access via ssh is already configured, so we
don't need the user "pi" anymore.
Related: OS#5055
Change-Id: If0cee6d35016c487eca02752625732dd03fad350
docker-playground.git assumes that its containers run as UID=1000,
otherwise some will fail with errors like:
+ osmo-clean-workspace.sh
+ chmod -R +w .
chmod: changing permissions of '.': Operation not permitted
Make this assumption explicit with "uid: 1000" in "add user jenkins".
This causes ansible to verify that the UID is really 1000, and if it is
not, it changes the UID. A follow-up patch will remove Raspbian's
default user of the same UID.
Related: OS#5055
Change-Id: I6efc9e74049e179d2f86655217195e76789ba77d
Fix deprecation warnings like the following:
[DEPRECATION WARNING]: Invoking "apt" only once while using a loop
via squash_actions is deprecated. Instead of using a loop to supply
multiple items and specifying `name: "{{ item }}"`, please use
`name: ['libjansson-dev', 'libulfius-dev']` and remove the loop.
This feature will be removed in version 2.11.
Related: OS#5055
Change-Id: I57b9ce690e8167249468954f3e62d14c7a92fcfc
Use the new label that matches all three rpi4 nodes in master-builds and
gerrit-verifications (so the builds can run on any of them). Use the
names of the three nodes in update-osmo-*-on-slaves, so all of them get
updated.
Related: https://jenkins.osmocom.org/jenkins/label/rpi4-raspbian10/
Related: OS#5055
Change-Id: I5b2af801baeb510e7784d6bcd7cabfda4962af0c
Replace old rpi4-deb9build-ansible with the new entries:
* rpi4-raspbian10build-1
* rpi4-raspbian10build-2
* rpi4-raspbian10build-3
The new jenkins nodes do not use lxc anymore (see related issue).
Related: OS#5055
Change-Id: I5d6588320613711251abcb664a5614ad49215725
Here, the job names are not the same as the directory names of
docker-playground.git
Related: OS#3208
Change-Id: Idbcb7267ce38cbdc2df5631df404f908487f827b
Change the description of the job, to make it easier to use for somebody
not familiar with the Osmocom stack / the testsuites. Move the BRANCH
parameter to the bottom, as it is not relevant for kernel developers who
want to test their kernel, and adjust the description.
Related: OS#3208
Change-Id: I0968ae716c8e3f32db6f589b28d6066d95ad85ea
Let the user choose whether to run against osmo-ggsn latest or master.
I chose the name "OSMOCOM_VERSION" for the variable to make this easier
to use for people not familiar with the Osmocom stack / the test
infrastructure, as suggested in the related issue.
Related: OS#3208
Change-Id: Ifaf8ed6502b469ade670c3f436670480d27becd6
Add new nightly jobs, as requested in OS#3208:
- ttcn3-ggsn-test-kernel-latest-torvalds
- ttcn3-ggsn-test-kernel-latest-net-next
Note that they are in ttcn3-testsuites.yml and not
testsuites-kernel-git.yml, because the KERNEL_URL etc. parameters are
not configurable. These new jobs are supposed to run every night with
the same hardcoded git repositories, the other job from
testsuites-kernel-git.yml is for manual runs with a freely configurable
kernel URL.
Depends: docker-playground Iaef87c3418b8e6f1e427b2abd9d40e9e28dc63e9
Related: OS#3208
Change-Id: I6918b953b64b0d81805fd02b1a8469a8db20f938
Move ttcn3-ggsn-test-kernel-git into its own file, so the parameters
that are only relevant for cloning a kernel from git, do not show up in
all other TTCN-3 jenkins jobs.
Related: OS#3208
Change-Id: Iafbe6139db47c2918dc1fd7c3bacf38da326d9c8
Fix osmo_obs_add_rpm_spec() to not assume to be in the $oscdir.
This caused the following error when being called from
osmocom-latest-packages.sh in the code path for adding a new package:
ls: cannot access 'osmo-gbproxy_*.tar.*': No such file or directory
Related: OS#5051
Change-Id: I467e332b69accfabba53332fdb9cd785991855fc
As decided in the meeting, disable jobs in the config instead of
manually disabling them in the web UI.
Change-Id: I11e9504cace39d7377e993537c6746fe154b3f12
Make it possible to run the jenkins job with a different kernel
repository, by exposing KERNEL_URL, KERNEL_REMOTE_NAME and
KERNEL_BRANCH.
Related: OS#3208
Change-Id: I5d4202a67a24d9c15a5b211fa29ce9d5b5a9d9c1
Change the name of the job to ttcn3-ggsn-test-kernel-git. A follow-up
patch will add parameters to the jenkins job to specify a different
repository than net-next, therefore the generic name makes more sense.
Related: OS#3208
Change-Id: I409f49f88f0a75c782dd3c90c5051e8287644138
Replace the current logic, that would only run osmo_obs_add_rpm_spec
when adding a new package, or when the version of a package has changed,
with running it every time.
Running the command when it is not needed does not hurt, as it does not
take significant time, and osc does not attempt to upload the file when
it did not change.
The advantage is, that we can update/upload the spec file without
tagging a new version, if a bug prevented it from getting uploaded
before (as it just was the case for all Osmocom packages).
Related: OS#5054
Change-Id: Ie067c97b5f54ec5b3309ddbd2bfb7f846cd0ccd3
Pass the path to the project's git repository to osmo_obs_add_rpm_spec,
instead of $output (has the output of "gbp buildpackage").
Related: OS#5054
Change-Id: I799398120ab0cbdb74b2d74a3fb139395d66d449
Make a separate commit for the distro specific patch, instead of using
"git commit --amend". Otherwise, if HEAD was pointing to the latest tag
before the amend, git-version-gen will use the previous tag instead of
the latest one after the amend.
Fixes: OS#5053
Change-Id: I67770a19ee60101df989f98673a22705ad50beed
In previous patch 27ee885a68, I made sure
that "apt-get update" runs before trying to install wget to download the
repository key. But of course the OBS repository should not be present
before installing the repo key, or else it will fail:
E: The repository 'http://download.opensuse.org/.../Debian_10 ./ InRelease' is not signed.
Fixes: 27ee885 ("repo-install-test: apt update before install wget")
Change-Id: If79484f9ffe2a14ce6481b53867f5aee111aa11b
Run osmo-ggsn ttcn3 tests against the gtp kernel module from the debian
kernel and from HEAD of the linux netdev/net-next git repository.
Depends: docker-playground I1f337af1e2de6db05b22636bc31a535404235559
Related: OS#3208
Change-Id: I4c496af78820d95549da22c1271bafe911f7eefb
Move 'cd' and './jenkins.sh' commands towards the end, so they are not
repeated in the case block of each pattern. This is in preparation for
the ggsn kernel mod test, which will need new patterns.
Related: OS#3208
Change-Id: I0fac24b961b1abb09317144ec2f65d4e21eb70c2
Prepare for the ggsn kernel module test, where we don't want to wipe the
workspace with the cloned linux git tree.
Related: OS#3208
Change-Id: Ic5843513c376d2b78be8ab90b21a747d31a827f1
If epoch is used in debian/changelog, prepend it to the version from
git-version-gen. Also set the epoch in the spec file.
For example, the version in debian/changelog may be 1:0.0.1. The epoch
is 1, therefore a 0.0.1.18.b5d18 version from git-version-gen would turn
into 1:0.0.1.18.b5d18.
Setting epoch=1 is needed for osmo-gbproxy, so apt on debian 10 with the
nightly Osmocom repository enabled does not try to install osmo-gbproxy
1.3.0 from the debian repositories instead of 0.0.1 from the Omsocom
repository.
Related: https://www.debian.org/doc/debian-policy/ch-controlfields.html#version
Related: OS#4992
Change-Id: I3d63f040058340bdcf9075c03387798c5314be03
Trigger registry-rebuild-upload-titan on changes in
osmo-ttcn3-hacks.git. Write registry-triggers.yml with a job template,
so we could add more triggers from git repos -> registry easily if
needed in the future.
Related: OS#5017
Change-Id: Ib6a27be6351ce821c7023a1f75a82b1ade2ffa49
Add the slave axis again, so the jobs aren't stuck forever. I had
assumed that without the axis, it would run on any node, but that's not
how it works. Add a label for this job, with several nodes attached,
like we do it for TTCN-3, master-builds, gerrit-verifications etc.
Related: https://jenkins.osmocom.org/jenkins/label/repo-install-test/
Related: OS#4567
Fixes: fcf669 ("repo-install-test: run on all build slaves again")
Change-Id: I276ab47f76a0f4db542ca99825ebb019236b4d27
It was not possible to reproduce the weird rpm errors on
admin2-deb9build, which had lead to limiting the build slaves to
build2-deb9build-ansible. Enable building on all again.
Closes: OS#4567
Change-Id: I82ef1f0c581de8ee826adedd9ecde6b4adaa36ba
osmo-cbc has full support for building dpkg + rpm from the latest
tag (0.2), hence we can enable building it also in 'latest'
Change-Id: Ia5bfd126ad168da7ab629b1f18ecfd60d4a49a51