Commit Graph

597 Commits

Author SHA1 Message Date
Harald Welte 2d79de0913 osmocom-nightly-packages: Build osmo-smlc
Change-Id: Ibaa87a23659de82bb9ad9767e7fa01331e40d2e9
2020-10-21 18:52:14 +00:00
Neels Hofmeyr 2dc35de85b jenkins: add osmo-smlc to coverity and ttcn3 jobs
Change-Id: I690962cd8352e255a2bf0ae16aa8ddda68edf10a
2020-10-21 00:55:59 +02:00
Pau Espin fc1edb3ea4 build-old-tags-against-master: Ignore some osmo-bts and openbsc versions
Some unit tests in those repositories started failing due to a fix in
libosmocore logging system where extra coloring tags were printed when not
needed.

Unit tests in current master of those repositories are fixed to work with
both old and new versions of libosmocore since they got coloring disabled
in their output, and new patch releases have been done containing the
fix, which means last releases already work with both libosmocore
version. However, older releases are expected to fail when built against
libosmocore master.

Change-Id: I03ca926b903a4dcc9967ab5fe455d715cdb9ed45
2020-09-23 13:33:09 +02:00
Pau Espin cf17475839 jobs: Enable --without-sse build variant for osmo-trx
Change-Id: I47a2067dc25335557dfa93f291f6ca9cd4959735
2020-09-18 21:15:10 +02:00
Alexander Couzens b12f989f86 ansible: osmocom-jenkins-slave: install SRS packages only on debian >= 9
Before debian 9 those packages aren't available. e.g. libczmq-dev or libsoapysdr-dev

Change-Id: I019ec01dc7e0a53fa4ce9e8579fbafb3916f559b
2020-08-31 15:57:56 +00:00
Harald Welte 53e344d574 jenkins: add master + gerrit for osmo-smlc
Change-Id: Iaeb064ed8e7d08db305f1928dc26d16dc6c889dd
2020-08-21 20:17:49 +02:00
Alexander Couzens 1a72d50548 ansible: osmocom-jenkins-slave: osmocom_build_deps: install osmo-python-tests for py2 and py3
The osmo-python-tests will be used to test vty commands.
The old python2 package are only required to test old images because
the current master is only supporting python3.
Installing both doesn't conflict because the python site-packages are
different for the two version.

Change-Id: Ica279e83b763389ababb526336ebd95d45beee7a
2020-08-14 16:31:27 +02:00
Harald Welte 7a7c38e78e old-tags-against-master: Don't build osmo-gsgsn 1.6.0+1.6.1
both tags will not build due to osmo_sockaddr name collisions.

Change-Id: Ifd3c0d30897d4d0286fa129f5c17b495a8f2323b
2020-08-14 11:56:52 +02:00
Harald Welte f95275f0eb osmocom-latest-packages: Remove limesuite-debian10
Since LimeSuite v20.07.x has been released, we don't need a debian10
specific package anymore.

Change-Id: Ibc1337e2500fc37c47a283141fad58a2fb321f05
2020-08-09 13:03:34 +02:00
Harald Welte 1d5d879be0 Revert "nightly-packages: Hard-code LimeSuite to 20.01.0 as 20.07.0 is broken"
This reverts commit e17a4d66d0, i.e.
we are back to building the latest tag, now that v20.07.1 has been
released, which actually builds again.

However, the package name in debian/changelog has not been updated to
reflect that version change, resulting in v20.07.1 being packaged
in a package called v20.07.0.

Change-Id: I01b77f03924a0b303103fb737dfee15b9c4b0c9c
2020-08-05 11:48:25 +02:00
Alexander Couzens 523aa0874e ansible/docker: set overlayfs2 and ipv6
overlayfs2 should be the default anyway. Enable it on all hosts,
since it was enabled on older hosts.

Change-Id: I20728d6017204c3978e23376baa89de6e91fed1e
2020-08-03 01:12:43 +00:00
Harald Welte e17a4d66d0 nightly-packages: Hard-code LimeSuite to 20.01.0 as 20.07.0 is broken
See https://github.com/myriadrf/LimeSuite/issues/313

This also reverts the previous commits that removed the work-around for
building LimeSuite on Debian10, as that one is still required for
v20.01.0 (and not for v20.07.0).

Change-Id: Ib70418f0b8a4c6aafa3098b6fa3e240f89112b59
2020-07-30 11:07:12 +02:00
Harald Welte 5fa739dc40 obs-nightly: Remove limesuite-debian10 package altogether
20.07 builds unmodified on debian10

Change-Id: I24f95efe55e3c88c07e3f313a11d706d6947b4ab
2020-07-30 09:30:06 +02:00
Harald Welte 76d9db0785 remove limesuite/build-for-debian10.patch
As of yesterday (upstream commit fdfe3d340506a7de4f41d74296e1f32a906700f2),
LimeSuite upstream finally builds without patches on Debian 10

Change-Id: Ibbed53f57ac750f39ea20ac73c28c4773c244a6f
2020-07-30 09:16:10 +02:00
Harald Welte e969f7f8a4 latest-packages: build osmo-e1d
Change-Id: Ib74832bff1ce6856ada126c54f5f66c510034af4
2020-07-01 10:50:25 +02:00
Harald Welte ac1769865d nightly-packages: Add osmo-e1d
Change-Id: I71630d9f99e3fe703fc90ce14f3f0c3a82282a0d
2020-06-30 21:58:44 +02:00
Pau Espin d276db78af ansible/gsm-tester: Install patchelf 0.11 on PATH
We used to install patchelf 0.10 in a specific path to only use it for
some binaries which had bugs with patchelf 0.9 (and other binaries had
bugs with 0.10, so we couldn't use 0.10 for all binaries and hence put
it in binary).

However, 0.11 is fixing both issues so we can use it in all cases, hence
we can put it in PATH (/usr/local/bin).

Related: OS#4389
Change-Id: Ica30807ecab7b60daee31fe7824b7c848d20c904
2020-06-25 19:30:11 +02:00
Pau Espin 2fa9daba67 jobs: osmo-gsm-tester: Run mass LU and ttcn3 BTS tests nightly
Before they were executed almost in a loop, so let's simply run them
once per day.

Change-Id: Ie42fc1e686d29740e14aaacd69659fe09e66801a
2020-06-09 14:26:38 +02:00
Pau Espin d30d252bf4 jobs: osmo-gsm-tester_ttcn3: Fix path to jenkins script
There was a directry refactoring a few weeks ago in osmo-gsm-tester and
this path was not updated correctly.

Change-Id: I580cd9d4a602b3ed1839fb0990ac3816c5e42cbe
2020-06-09 14:10:46 +02:00
Harald Welte cf8711ed9a remove openbsc from nightly and latest builds
The only part that we haven't migrated elsewhere is osmo-bsc_nat,
which is also really unmaintained at this point.  Let's not confuse
people into thinking they should actually use this software anymore.

Change-Id: Icee165422a52bfe04be103a5b7ebb5c8909c0321
2020-06-03 20:50:34 +02:00
Oliver Smith e49412c8a9 jobs/ttcn3-testsuites.yml: support centos8
Related: OS#4564
Change-Id: I195437ffe8a8b6cb54de867d6f809c71e8f47ef1
2020-05-30 09:33:17 +02:00
Oliver Smith e683e3eb8a scripts: source common.sh before cd
common.sh tries to set OSMO_CI_DIR now; however this does not work when
common.sh was sourced with ". ./common.sh":

	realpath: scripts/..: No such file or directory

Fixes: 7cb8e2d0 ("OBS: add debian10 specific patch for limesuite")
Related: https://jenkins.osmocom.org/jenkins/job/Osmocom-build-tags-against-master/455/console
Change-Id: Ib326eb0fa769528398335c9cf06dc9c9576c882e
2020-05-28 10:14:58 +00:00
Oliver Smith 504f23d82f jobs/osmocom-obs.yml: create Osmocom_OBS_next job
Change-Id: I50dca459d19dca5894b71169ae70a6c6778b2e52
2020-05-28 10:01:23 +00:00
Oliver Smith 799d936cc6 OBS: add osmocom-next-packages.sh
Fill the "next" feed with source packages generated from the "next"
branch of each Osmocom project, if it exists, with fallback to the
"master" branch. Implement as wrapper around osmocom-nightly-packages.sh,
so we don't duplicate code and don't need to add more logic to the jenkins
job.

Adjust all osmo_obs_prepare_conflict calls. Add a comment line on top of
each osmocom-*-packages.sh script stating the feed they can be used with.

Related: SYS#4887
Change-Id: I0542b6243bdd29d08381fcc82368dcbd30bf9dce
2020-05-28 10:01:23 +00:00
Oliver Smith 79b63d35a2 OBS: support more than one conflicting package
For the upcoming network:osmocom:next repository, it would be
inconsistent to have the debian package conflict mechanism only support
latest and nightly, even if the next repository is currently not built
for debian.

Change-Id: I2c07313fbbdffe5571e447059b08fe74c853cef0
2020-05-28 10:01:23 +00:00
Oliver Smith 1d0b144ad4 repo-install-test: update jenkins job
Rename osmocom-debian-install.yml to repo-install-test.yml to get debian
out of the name. Extend it with a new distro parameter and update the
description. Adjust the shell section to run the script from its new
location (in osmo-ci.git, not docker-playground.git). Turn it into a
matrix job, so we can have two parameters (distro, feed) for each job.

Related: OS#4563
Change-Id: I777098f19d75f7efbd68b837ccdcd83309429c39
2020-05-28 09:53:22 +00:00
Oliver Smith 8a65d0efd2 repo-install-test: don't mount /data
The "run-inside-docker.sh" script is running as root (in order to be
able to install packages). Do not mount an outside directory as /data
inside the image anymore, where the script would write temporary data.
This causes problems on jenkins, as the temporary files are written as
root and jenkins is then unable to wipe the workspace.

I had used this for debugging when I wrote the script initially, but
almost the same can be done now with INTERACTIVE=1 and cat on the
temporary files.

Related: OS#4563
Change-Id: If7e1d83580c2951e7e50181ba7e755b987675e4b
2020-05-28 09:53:22 +00:00
Oliver Smith 6b3980d05f repo-install-test: support centos
Related: OS#4563
Depends: I50743c304728444ede8e0d40b8abef9d17c44d8d (docker-playground)
Change-Id: I399360ee6389591180859b52f0ef08883447b90b
2020-05-28 09:53:22 +00:00
Oliver Smith ee7d5314fb repo-install-test: add KEEP_CACHE env var
Keep downloaded binary packages to make test cycles shorter during
development. While at it, also document all environment variables.

Change-Id: I4d6ebaf460e47f29e023acb0bd78ef52ca80c7cd
2020-05-28 09:53:22 +00:00
Oliver Smith 118915fba7 repo-install-test: use sh -ex
Make it consistent with run-inside-docker.sh by also using -e and -x.
This makes development easier.

Change-Id: I733164829bf076fb42df3fde725f3e330f8abecc
2020-05-28 09:53:22 +00:00
Oliver Smith 29d77413c0 repo-install-test: docker: add --tmpfs /run/lock
Make the script work on a debian10 host. I had developed it initially on
debian9, where this was not necessary, and the Jenkins servers are also
running debian9. Fixes:

Failed to mount tmpfs at /run/lock: Permission denied
[!!!!!!] Failed to mount API filesystems, freezing.
Freezing execution.

Change-Id: I5127356031a5dd080473aa650c2beae2a81a697f
2020-05-28 09:53:22 +00:00
Oliver Smith 2774c91438 repo-install-test: integrate
Make the script run from its new location.

Related: OS#4563
Change-Id: Ib6fbc4b9487a84e0c28cd8b0622ddc2d5b1dfe14
2020-05-28 09:53:22 +00:00
Oliver Smith 913a61b1f7 repo-install-test: move from docker-playground
Prepare the repo-install-test to be extended to cover centos8 as well.
Move the scripts to osmo-ci.git first, so we can mount them as shared
files into the docker containers from here.

Move files without any changes. Integration will be done in a follow-up
commit, so we have a clean git log.

debian-repo-install-test/jenkins.sh
	=> scripts/repo-install-test.sh
debian-repo-install-test/testdata/blacklist.txt
	=> scripts/repo-install-test/blacklist.txt
debian-repo-install-test/testdata/repo-install-test.sh
	=> scripts/repo-install-test/run-inside-docker.sh

Related: OS#4563
Related: If93f37e8d46597a9abc67a4529be9addd65780f5 (docker-playground)
Change-Id: Ia678cc15e66630bd6b75b6c89bc75c1e27afd66c
2020-05-28 09:53:22 +00:00
Oliver Smith ec04994c10 Cosmetic: OBS: remove comments for requirements
The list is incomplete, and we have a programmatic check for required
binaries in common-obs.sh now. The next patch will add a new one of
these scripts, so let's clean it up a bit.

Change-Id: Ifab635e0d7a162142a8e80f3223d024888114f3f
2020-05-25 11:47:30 +02:00
Oliver Smith 7cb8e2d05c OBS: add debian10 specific patch for limesuite
Add a patch to replace libwxgtk3.0-dev with libwxgtk3.0-gtk3-dev in
debian/control. Adjust OBS scripts to apply such patches from this
repository if they exist here, and fall back to the project's
repository (osmo-trx, osmo-gsm-manuals patches are there).

Related: OS#4562
Change-Id: I8dfb60e999bf9f61e6cd11983dba033a4c6107ad
2020-05-25 11:47:11 +02:00
Oliver Smith b6965f877c scripts/common-obs.sh: move osmo_obs_checkout_copy
Refactor checkout_copy_debian8_jessie from osmocom-latest-packages.sh
and osmocom-nightly-packages.sh to take the distribution name as
argument and merge both to osmo_obs_checkout_copy in common-obs.sh.

Use debian8 as distribution name instead of debian8-jessie, so the
distribution name matches the suffix of the patch file
(build-for-debian8.patch).

A follow-up commit will apply a debian10 specific patch with this new
function.

Related: OS#4562
Change-Id: I2b69571ebc08a920c9147ce544fa8a2e6d950e65
2020-05-25 11:46:04 +02:00
Oliver Smith eb33aa7f63 OBS: add --noservice to osc ci command
Prevent the following error:

ERROR: please install obs-service-format_spec_file or use the --noservice option
Build step 'Execute shell' marked build as failure

Related: https://jenkins.osmocom.org/jenkins/job/Osmocom_OBS_latest/976/console
Change-Id: Ib2fbaace47b3c12462860419f19b01a5b4d192e8
2020-05-22 11:36:58 +02:00
Oliver Smith a36c355462 OBS: check required programs before start
osmocom-*-packages.sh take some time to execute and has quite a few
programs that are not commonly installed. Check the required
dependencies first, so it doesn't abort in the middle of the scripts if
these are missing. I just ran into this with the new meson dependency.

Change-Id: I46cf1aeedd61dbd4fc8fa3f24c60e29033339ead
2020-05-22 11:36:53 +02:00
Oliver Smith 4969d2b116 scripts/osmocom-obs-link.sh: remove sdcc
sdcc does not build for centos 8 without diving deeper into the
dependency hell:

nothing provides gputils,
nothing provides python3-base,
nothing provides inkscape,
nothing provides lyx,
nothing provides makeinfo

So let's not build libusrp for centos 8 for now. We can build osmo-trx
without the usrp1 backend (already configured in the spec.in file).

Related: OS#4550
Change-Id: Icfb289b0eeeb7215d23517fb8a4e56f2a8d774f1
2020-05-20 11:27:39 +02:00
Oliver Smith b38c3e753b scripts/osmocom-obs-link.sh: new file
Related: OS#4550
Change-Id: Ib36682d645d9badad5515476675a947f2aec0baa
2020-05-19 17:02:33 +02:00
Oliver Smith 4f66f30307 OBS: add RPM spec files
Use existing osmocom-*-packages.sh scripts to add RPM spec.in files. Set
the same version, as in the debian .dsc files.

Related: OS#4550
Change-Id: If93b9d95e4c18cf1c29594c0802cbffaea27101c
2020-05-19 16:58:37 +02:00
Pau Espin 71cc851e35 osmo-gsm-tester: Point config parameter to file instead of its dirname
Since osmo-gsm-tester.git Change-Id Ieca65b71b543c44cfcec8e83efd0fe053c432e55,
the -c parameter holds the config file and not the directory where it is contained.

Change-Id: I9aca57c4dd3180367eb17ec92177b90a9c411a6a
2020-05-11 18:50:11 +02:00
Pau Espin 03b6049534 jobs: osmo-gsm-tester: Drop use of OSMO_GSM_TESTER_CONF for default conf dir
As of osmo-gsm-tester.git Change-Id
I7eb69f870d0dcb5906d45ae067d6bed1aabf5862, jenkins-run.sh script uses
the sysmocom value by default, so let's avoid setting it to simplify
stuff.

Change-Id: I8edfb93d53376930f60e0bd8d36a82ec6c11ed85
2020-05-07 19:16:15 +02:00
Harald Welte 512e6bc46d jenkins: Add master+gerrit job for osmo-el2tpd
Change-Id: I220741236c85ab7e25593b7dfadafaeb786ee503
2020-05-03 21:32:09 +02:00
Harald Welte bede70bee5 disable osmo-uecups latest build; needs new libosmocore release
Change-Id: Ib2f5fcd7e7a5b05a1fef9f3cbac99c6f203e2baa
2020-04-27 09:32:03 +02:00
Harald Welte b5254872aa osmocom-*-packages.sh: fix osmo-uecups
Change-Id: I359fe8f4fb94dc9b4b31e10f5cb9d0d4400a0e2a
2020-04-24 23:41:44 +02:00
Harald Welte fcd7f76107 add osmo-uecups to nightly + latest feeds
Change-Id: Ic7de1b4c6ce47093874fe373cac8a1f7e47ee179
2020-04-20 13:32:00 +02:00
Pau Espin e10e627f9d ansible: gsm-tester: Add dependency python3-websocket
osmo-gsm-tester needs it in rfemu_amarisoftctrl.py to connect to
Amarisoft CTRL interface (which is implemented through a websocket).

Change-Id: Iab03cfdcfb1c197ae002d95e0bb56d86e0aac97b
2020-04-17 20:04:20 +02:00
Harald Welte 933f866eff jenkins: add osmo-uecups to gerrit+master
Change-Id: I3ca141edcd61ae4126fa28f6560c99a1f568dec7
2020-04-17 15:18:40 +02:00
Harald Welte 1eee4475c0 jenkins: Add libnl-3 for osmo-uecups
Change-Id: I97114b60a647c6823eaeb031ea799c07af2b7aa0
2020-04-17 15:18:40 +02:00