Commit Graph

710 Commits

Author SHA1 Message Date
Oliver Smith 73755fdfbf jobs/ttcn3: add TTCN3-centos-*-latest
Depends: docker-playground I274b31d4903df07e99fd434af25bdb72991f6923
Related: OS#5049
Change-Id: I9a29fddc93789cd285d85445830cc26016af9768
2021-03-04 14:20:14 +01:00
Oliver Smith 57576f66e3 jobs/ttcn3-testsuites-kernel-git: remove wrong comment
Here, the job names are not the same as the directory names of
docker-playground.git

Related: OS#3208
Change-Id: Idbcb7267ce38cbdc2df5631df404f908487f827b
2021-03-04 14:20:14 +01:00
Oliver Smith 5916e1f003 jobs/ttcn3-testsuites-kernel-git: make userfriendly
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
2021-03-04 14:20:09 +01:00
Oliver Smith 3b9325f0b6 jobs/ttcn3-testsuites-kernel-git: add OSMOCOM_VERSION
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
2021-03-04 10:56:24 +01:00
Oliver Smith 0cdf1db366 jobs/ttcn3-testsuites-kernel-git: trigger manually
Related: OS#3208
Change-Id: I3a141372b0648a03b35b2b274949a001851f6ca6
2021-03-04 10:56:24 +01:00
Oliver Smith 6f2f1cbd33 jobs/ttcn3: add new ggsn-test-kernel-latest jobs
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
2021-03-04 10:56:13 +01:00
Oliver Smith f6d567885d jobs/ttcn3: split *-kernel-git to own file
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
2021-03-02 13:26:08 +00:00
Harald Welte 12386e706a ttcn3-testsuites: Enable TTCN3 for osmo-smlc-latest
now that osmo-smlc is part of network:osmocom:latest, test it both
on debian9 + centos8

Change-Id: I023e47531b24f540645186f3cbf89f5025b7b48b
2021-03-02 13:41:38 +01:00
Oliver Smith 0949776344 OBS: latest: fix code path to add new package
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
2021-03-02 12:23:01 +00:00
Oliver Smith 9cda811f02 jobs/ttcn3: describe ttcn3-ggsn-test-kernel-*
Related: OS#1943
Change-Id: If9975e8df46d51ef66c7a9faaf11fc0449f32f34
2021-03-02 11:18:44 +00:00
Oliver Smith e007899ab5 jobs/ttcn3: disable failing jobs
As decided in the meeting, disable jobs in the config instead of
manually disabling them in the web UI.

Change-Id: I11e9504cace39d7377e993537c6746fe154b3f12
2021-03-02 11:18:10 +00:00
Harald Welte 0eade12c25 osmocom-latest-packages: Package osmo-smlc
osmo-smlc now has a tag that builds against a tagged libosmocore

Change-Id: I0e6756f94027ad1ffd88109b2977cb33ee891a21
2021-03-02 11:17:21 +00:00
Oliver Smith 1cc397205d jobs/ttcn3: add KERNEL_* parameters
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
2021-03-01 12:54:55 +00:00
Oliver Smith 718448606f jobs/ttcn3: rename ttcn3-ggsn-test-kernel-net-next
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
2021-03-01 12:54:55 +00:00
Oliver Smith ac802f941f OBS: latest: add osmo-gbproxy
Related: OS#5051
Change-Id: I66bb4e7aeedbb6f40aa9401f4adaf077e22dd9fe
2021-03-01 12:53:01 +00:00
Oliver Smith bb880678c1 OBS: latest: run osmo_obs_add_rpm_spec every time
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
2021-03-01 12:52:40 +00:00
Oliver Smith 08a554c7d1 OBS: latest: fix osmo_obs_add_rpm_spec call
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
2021-03-01 12:52:40 +00:00
Oliver Smith 571c52207a OBS: don't amend distro specific patch
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
2021-03-01 11:03:16 +01:00
Harald Welte 1a7e2730e2 ignore osmo-trx 1.3.0 as it doesn't do "make dist"
Change-Id: I47fcd280de158a318f85149eb93b8201ac326e17
Closes: OS#5052
2021-02-28 12:37:54 +01:00
Oliver Smith 52578dde20 repo-install-test: install repo after repo key
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
2021-02-26 17:34:20 +01:00
Oliver Smith bce53ba7d0 jobs/ttcn3: add osmo-ggsn kernel tests
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
2021-02-26 16:49:07 +01:00
Oliver Smith 4521517d1f jobs/ttcn3: tweak shell cmd
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
2021-02-26 16:14:12 +01:00
Oliver Smith 0001acdde8 jobs/ttcn3: add wipe_workspace to job template
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
2021-02-26 12:57:23 +01:00
Oliver Smith 27ee885a68 repo-install-test: apt update before install wget
Fix errors caused by outdated package index:
  + apt install -y wget
  ...
  Err:2 http://security.debian.org/debian-security stretch/updates/main amd64 libssl1.1 amd64 1.1.0l-1~deb9u2
    404  Not Found [IP: 151.101.130.132 80]

Change-Id: I9d28967dc556e95eec2e3e3d7ff88533154acf3c
2021-02-25 14:43:59 +00:00
Harald Welte 89bf3592c2 ttcn3-testsuites: Enable testing of osmo-cbc "latest"
We do have "latest" packages, so we can start testing it

Change-Id: I9f8fb03d9a02da7174bc1aa2aef412e7dbc0724e
2021-02-23 20:26:45 +01:00
Harald Welte bdb36dd055 osmocom-latest-packages: re-enable osmo-uecups
this should have been re-enabled since libosmocore 1.4.0 already

Change-Id: I5b8789cdfff2432c8d43972e19117f9f54eaaa7f
2021-02-23 20:21:11 +01:00
Harald Welte 17f23faf37 jobs: Fix names of commented-out SMLC test containers
This was a copy-+paste introduced in Ib1f374974444cdd5d829c4e57153137ecd9149f1

Change-Id: I8b315e2df34ccd9db78173ee6e83b4d8ec85e8bf
2021-02-22 14:13:13 +00:00
Harald Welte cf95a6f39c ttcn3-testsuites: Add osmo-cbc tests
Change-Id: I29eb72570d1f80c0f690878597c03afad5bb7b10
2021-02-22 14:12:49 +00:00
Oliver Smith bc2d794da8 OBS: nightly: use epoch from debian/changelog
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
2021-02-16 11:37:24 +01:00
Oliver Smith e99cb64e2e jobs/registry-triggers: add for osmo-ttcn3-hacks
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
2021-02-11 18:03:38 +00:00
Oliver Smith 7433811c62 jobs/registry-rebuild-upload-titan: new job
Trigger for this job will be added in follow-up patch.

Related: OS#5017
Change-Id: I2c4b264abf760894edb0788054fd987f9346b6ec
2021-02-11 18:03:38 +00:00
Oliver Smith 9bfdbd13e8 jobs/registry-update-base-images: fix typos
Change-Id: Ifc6c85e638818113182802841c3e0e4a7e6cfda8
2021-02-11 15:50:32 +00:00
Oliver Smith 2b22fa2f5a jobs/master-builds: libosmocore: add triggers
Add missing triggers for osmo-gbproxy, osmo-trx.

Related: OS#4992
Change-Id: I1bc590cc9560b1780cccd99f7ca86700bd9a6ad9
2021-02-11 12:28:24 +01:00
Oliver Smith ae46ae9fc2 repo-install-test: add label for relevant nodes
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
2021-02-10 13:02:59 +01:00
Oliver Smith fcf6699f56 repo-install-test: run on all build slaves again
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
2021-02-08 11:42:28 +01:00
Oliver Smith 70ce36c3ff OBS: nightly: add osmo-gbproxy
Depends: osmo-sgsn I37f7cebaf2a06bd93627a452f5df44edcfc0f87a
Related: OS#4992
Change-Id: I08c513ba812bcb302b5dcab52fc187b27b1b32b7
2021-02-03 10:44:49 +00:00
Harald Welte 2f611e206c osmocom-latest-packages: Build osmo-cbc
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
2021-02-03 08:38:30 +00:00
Harald Welte 2933da3810 master + gerrit jenkins jobs: Add osmo-gbproxy
osmo-gbproxy is moving to its own reporitory

Change-Id: Id29c83bdcd9b626bb7920738c8b1f945ef7f3671
2021-02-03 08:38:06 +00:00
Oliver Smith 708aed1ebd OBS: nightly: don't download bumpversion
Stop downloading bumpversion related archives with each run. They were
not uploaded to OBS after the download (no 'osc add' runs aftewards, and
last modified of network:osmocom:nightly:bumpversion is 3 years ago).

bumpversion is needed to run osmo-release.sh, and is available in debian
since 9 (stretch).

Related: https://build.opensuse.org/package/show/network:osmocom:nightly/bumpversion
Change-Id: Iaf2527043e9acdb6acff3e481d4516ac4b75b7e7
2021-02-02 14:12:04 +01:00
Oliver Smith 6f5f4d6dd3 OBS nightly: don't try to use UNKNOWN as version
If the repository doesn't have a git tag yet, git-version-gen will set
the version to UNKNOWN. The debian package build tools will choke on
that, so fall back to using the version from debian/changelog.

Related: OS#4992 (osmo-gbproxy.git doesn't have a tag just yet)
Change-Id: I43c32f73bdfd715db5afdeec3bd8026d3c1fd8eb
2021-01-29 16:11:06 +01:00
Oliver Smith 00b7181760 repo-install-test: add 'debian10'
Related: OS#4969
Depends: docker-playground I7addb30aa3f8564dcbdc3f6cf2e2e0cfdf4dd02d
Change-Id: If0fc12464b571dc42b33f2a077c77ea6e5120b8d
2021-01-25 10:31:11 +01:00
Oliver Smith 137d39c764 repo-install-test: rename 'debian' to 'debian9'
Related: OS#4969
Depends: docker-playground I2ea18997019ebaa013c258996f5131386bcd6426
Change-Id: Iaa2202cca4072b4dc0309e011aba6cb33ed5b8aa
2021-01-25 10:28:16 +01:00
Oliver Smith 6786c2615c Cosmetic: repo-install-test: fix DISTRO comment
A valid example is "centos8", with the version, not "centos". Remove the
debian example, as we'll require a version with that later on as well.

Related: OS#4969
Change-Id: Ie8c2c86bc77606b1d2d4339751521139de22db04
2021-01-25 10:27:26 +01:00
Oliver Smith 9318ea8720 repo-install-test: resolve distro obs dir in func
Instead of hardcoding CentOS_8 in the centos code path, and Debian_9.0
in the debian code path, resolve the proper OBS directory based on
$DISTRO.

Related: OS#4969
Change-Id: Ie537e8befeebd7958b2a1fe8f6fd54587cfcb1b6
2021-01-25 10:27:26 +01:00
Oliver Smith 4813fb7fd9 repo-install-test: verify DISTRO argument
Keep list of supported distros in one place in repo-install-test.sh.

Related: OS#4969
Change-Id: I1aa2564ff861d81a866302e44a1f99ff876c7b31
2021-01-25 10:27:20 +01:00
Oliver Smith 89c733986e repo-install-test: no distro version in function
Instead of calling various foo_debian and foo_centos8 versions with
foo_$DISTRO, create new foo functions that call the right
distro-specific function based on debian* or centos* being in DISTRO.
Rename all foo_centos8 functions to foo_centos.

This is in preparation to run this script with debian10 too, not just
debian9. This can also be used to test a different centos version in the
future.

Related: OS#4969
Change-Id: Ibb9f93af16af7ebe947f7efcd4e709f3e62d12c0
2021-01-22 12:06:09 +01:00
Oliver Smith eea4a2f637 repo-install-test: print successful test msg
Change-Id: Idfb75b0461a352ae1703f3c8452cd3afc3320049
2021-01-22 12:06:06 +01:00
Oliver Smith 867b6de117 jobs/repo-install-test: run a few hours later
Give OBS more time to build the repository, before verifying that we can
install all packages from the repository. Apparently, OBS publishes the
repository in WIP state, before all packages for a distribution have
been built.

This leads to problems in the "nightly" and "next" repositories. In
contrary to "latest", we do not bump soname versions when doing ABI
changes, so we require the user to have all installed Osmocom packages
built from the same timestamp. With recent changes in the OBS scripts,
we enforce this by having all packages built from the same timestamp
depend on the exact version of a dummy package with that timestamp as
version.

The repo-install-test installs all packages from the binary repository,
and so it fails, as it should, if the repository is in an inconsistent
state with some packages built today and some packages built yesterday.

Related: OS#4733
Change-Id: I8df9b449d6213b5dca6fd9bf5c06b5c96d468f66
2021-01-21 10:44:59 +01:00
Oliver Smith 48c966a305 Cosmetic: jobs/obs: update repo-install-test name
Change-Id: Ic5712173ec79d286fb3591364636a38f6af74503
2021-01-21 10:30:05 +01:00
Oliver Smith 2c8767a5c7 repo-install-test: add test_conflict
Install one Osmocom package from one package feed and attempt to install
a second package from a different feed. Verify that the package manager
exits with error and mentions the conflict in its output.

Related: OS#4733
Change-Id: Icf2a3a1d1de2ff42b1dc9aadf2075e5e1ff40291
2021-01-20 14:28:25 +01:00