aboutsummaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)AuthorFilesLines
2021-03-02OBS: latest: fix code path to add new packageosmith/obs-latest-fixOliver Smith1-1/+1
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-01jobs/ttcn3: add KERNEL_* parametersOliver Smith1-2/+22
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-01jobs/ttcn3: rename ttcn3-ggsn-test-kernel-net-nextOliver Smith1-3/+3
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-01OBS: latest: add osmo-gbproxyOliver Smith1-0/+2
Related: OS#5051 Change-Id: I66bb4e7aeedbb6f40aa9401f4adaf077e22dd9fe
2021-03-01OBS: latest: run osmo_obs_add_rpm_spec every timeOliver Smith1-2/+3
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-01OBS: latest: fix osmo_obs_add_rpm_spec callOliver Smith1-2/+2
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-01OBS: don't amend distro specific patchOliver Smith1-1/+1
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-02-28ignore osmo-trx 1.3.0 as it doesn't do "make dist"Harald Welte1-0/+1
Change-Id: I47fcd280de158a318f85149eb93b8201ac326e17 Closes: OS#5052
2021-02-26repo-install-test: install repo after repo keyOliver Smith1-1/+1
In previous patch 27ee885a689163cede1fc0c7f76584ccbb7abb41, 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-26jobs/ttcn3: add osmo-ggsn kernel testsOliver Smith1-1/+32
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-26jobs/ttcn3: tweak shell cmdOliver Smith1-8/+14
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-26jobs/ttcn3: add wipe_workspace to job templateOliver Smith1-0/+2
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-25repo-install-test: apt update before install wgetOliver Smith1-0/+1
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-23ttcn3-testsuites: Enable testing of osmo-cbc "latest"Harald Welte1-3/+3
We do have "latest" packages, so we can start testing it Change-Id: I9f8fb03d9a02da7174bc1aa2aef412e7dbc0724e
2021-02-23osmocom-latest-packages: re-enable osmo-uecupsHarald Welte1-2/+1
this should have been re-enabled since libosmocore 1.4.0 already Change-Id: I5b8789cdfff2432c8d43972e19117f9f54eaaa7f
2021-02-22jobs: Fix names of commented-out SMLC test containersHarald Welte1-2/+2
This was a copy-+paste introduced in Ib1f374974444cdd5d829c4e57153137ecd9149f1 Change-Id: I8b315e2df34ccd9db78173ee6e83b4d8ec85e8bf
2021-02-22ttcn3-testsuites: Add osmo-cbc testsHarald Welte1-0/+9
Change-Id: I29eb72570d1f80c0f690878597c03afad5bb7b10
2021-02-16OBS: nightly: use epoch from debian/changelogOliver Smith2-5/+24
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-11jobs/registry-triggers: add for osmo-ttcn3-hacksOliver Smith1-0/+32
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-11jobs/registry-rebuild-upload-titan: new jobOliver Smith1-0/+37
Trigger for this job will be added in follow-up patch. Related: OS#5017 Change-Id: I2c4b264abf760894edb0788054fd987f9346b6ec
2021-02-11jobs/registry-update-base-images: fix typosOliver Smith1-2/+2
Change-Id: Ifc6c85e638818113182802841c3e0e4a7e6cfda8
2021-02-11jobs/master-builds: libosmocore: add triggersOliver Smith1-0/+2
Add missing triggers for osmo-gbproxy, osmo-trx. Related: OS#4992 Change-Id: I1bc590cc9560b1780cccd99f7ca86700bd9a6ad9
2021-02-10repo-install-test: add label for relevant nodesOliver Smith1-0/+4
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-08repo-install-test: run on all build slaves againOliver Smith1-5/+0
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-03OBS: nightly: add osmo-gbproxyOliver Smith1-0/+2
Depends: osmo-sgsn I37f7cebaf2a06bd93627a452f5df44edcfc0f87a Related: OS#4992 Change-Id: I08c513ba812bcb302b5dcab52fc187b27b1b32b7
2021-02-03osmocom-latest-packages: Build osmo-cbcHarald Welte1-0/+2
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-03master + gerrit jenkins jobs: Add osmo-gbproxyHarald Welte2-0/+2
osmo-gbproxy is moving to its own reporitory Change-Id: Id29c83bdcd9b626bb7920738c8b1f945ef7f3671
2021-02-02OBS: nightly: don't download bumpversionOliver Smith1-17/+0
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-01-29OBS nightly: don't try to use UNKNOWN as versionOliver Smith1-1/+1
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-25repo-install-test: add 'debian10'Oliver Smith4-2/+71
Related: OS#4969 Depends: docker-playground I7addb30aa3f8564dcbdc3f6cf2e2e0cfdf4dd02d Change-Id: If0fc12464b571dc42b33f2a077c77ea6e5120b8d
2021-01-25repo-install-test: rename 'debian' to 'debian9'Oliver Smith4-3/+3
Related: OS#4969 Depends: docker-playground I2ea18997019ebaa013c258996f5131386bcd6426 Change-Id: Iaa2202cca4072b4dc0309e011aba6cb33ed5b8aa
2021-01-25Cosmetic: repo-install-test: fix DISTRO commentOliver Smith1-1/+1
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-25repo-install-test: resolve distro obs dir in funcOliver Smith1-3/+20
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-25repo-install-test: verify DISTRO argumentOliver Smith1-5/+16
Keep list of supported distros in one place in repo-install-test.sh. Related: OS#4969 Change-Id: I1aa2564ff861d81a866302e44a1f99ff876c7b31
2021-01-22repo-install-test: no distro version in functionOliver Smith1-18/+60
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-22repo-install-test: print successful test msgOliver Smith1-0/+6
Change-Id: Idfb75b0461a352ae1703f3c8452cd3afc3320049
2021-01-21jobs/repo-install-test: run a few hours laterOliver Smith1-1/+1
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-21Cosmetic: jobs/obs: update repo-install-test nameOliver Smith1-1/+1
Change-Id: Ic5712173ec79d286fb3591364636a38f6af74503
2021-01-20repo-install-test: add test_conflictOliver Smith2-0/+107
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-20repo-install-test: add TESTS variableOliver Smith2-3/+42
Allow to enable only certain tests during development. Related: OS#4733 Change-Id: I8d817f47d790e4cdc25c5182a0e91b66a00fbf52
2021-01-20repo-install-test: cfg_osmocom_repo: add PROJ argOliver Smith1-8/+12
Prepare for future conflicts test, which will configure repositories with a different PROJ. Related: OS#4733 Change-Id: Ib9946b5a02f8692efc8515907ba84048026474f9
2021-01-20repo-install-test: download/add deb release keyOliver Smith1-2/+11
Download and add the release key for the debian repository from OBS. This is useful for manually testing the existing tests with a different PROJ for debugging, and it will be used by a future conflict test to install a second repository (e.g. nightly and latest at the same time). Note that this is not needed for rpm, because the dnf package manager automatically downloads the key if it is missing. Related: OS#4733 Change-Id: I91e7a208d8f5cb50f8baa2fde0eb979aae91da8f
2021-01-20repo-install-test: don't use $FEED in centos8 repoOliver Smith1-1/+1
Use $PROJ instead of $FEED in the repository name, so we can add $PROJ as parameter to the repo configuration functions later without worrying about having a matching $FEED. Related: OS#4733 Change-Id: Ic316add6b2d9b6f50335cad762628bb16da61d82
2021-01-20repo-install-test: put $PROJ in sources.list nameOliver Smith1-2/+1
Don't call the file osmocom-latest regardless of the feed name. This becomes important in a future conflict test where we will have two repositories from two feeds configured. Related: OS#4733 Change-Id: I8926443a9ff70f285d9467d39658e64456972b07
2021-01-20repo-install-test: make HTTP, OBS vars localOliver Smith1-5/+6
Move the two debian-specific variables to the debian-related functions where they are used. Both are only used once, and having them global is misleading since the test isn't just for debian anymore, but also for centos8. Make the variables lowercase to indicate that they aren't used globally. Related: OS#4733 Change-Id: I1dfddbd9311d741c03ceedb12aee9aeae6abdab8
2021-01-20repo-install-test: add PROJ variableOliver Smith2-7/+29
Make debugging easier by having a PROJ variable that can be overridden by an environment variable of the same name. Pass it to docker and use it to generate all related URLs etc. Add functions in run-inside-docker.sh to convert the PROJ variable into the two other formates needed (with slashes, with underscore), so a future patch can use these functions with a different PROJ variable too. Related: OS#4733 Change-Id: I0ac05a79ad65b5664b5ba37227b65e3b1422a4bf
2021-01-20repo-install-test: tweak FEED syntaxOliver Smith1-1/+1
Use the shorter form, before adding another variable with default value. Related: OS#4733 Change-Id: Icb36da91a6dc52529c2087b0961c1b698076eea1
2021-01-18OBS: use _sourcedir to write rpmlintrcOliver Smith1-1/+1
Change-Id: I16e1b3fe297ab516ceff4742ff39633480f3720e
2021-01-18OBS: make rpmlint shlib-fixed-dependency non-fatalOliver Smith1-0/+15
Create a rpmlint config, which makes the shlib-fixed-dependency check non-fatal, as it caused builds for openSUSE_Leap_15.2 to fail. The check is supposed to warn about libraries depending on specific versions of other packages. However, for the nightly and next packages, this is exactly what we want to do to ensure that users will always upgrade all Osmocom packages to the builds from a specific day, and not mix them. Messages from the check: [ 307s] libosmocodec0.armv7hl: E: shlib-fixed-dependency (Badness: 440) osmocom-nightly = 1.0.0.202101181006 ... [ 307s] libosmovty4.armv7hl: E: shlib-fixed-dependency (Badness: 440) osmocom-nightly = 1.0.0.202101181006 [ 307s] Your shared library package requires a fixed version of another package. The [ 307s] intention of the Shared Library Policy is to allow parallel installation of [ 307s] multiple versions of the same shared library, hard dependencies likely make [ 307s] that impossible. Please remove this dependency and instead move it to the [ 307s] runtime uses of your library. [ 307s] [ 307s] (none): E: badness 3960 exceeds threshold 1000, aborting. Related: OS#4733 Related: https://en.opensuse.org/openSUSE:Packaging_checks#Disarming_Fatal_Errors Change-Id: I560b4adf80b5785d396a17afefa590559ad5ca5a
2021-01-18Revert "osmo-build-dep.sh: don't build osmo-gsm-manuals"Oliver Smith1-8/+0
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 4cbc445616fc9e0e4ded5eba56b2e741d0f332a3. Related: OS#4912 Depends: https://gerrit.osmocom.org/q/topic:jenkins-no-manuals-dep Change-Id: I88d57ee04775dc75e6ca3152d7edfa7f47608c8a