Commit Graph

138 Commits

Author SHA1 Message Date
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
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
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
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 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 1eee4475c0 jenkins: Add libnl-3 for osmo-uecups
Change-Id: I97114b60a647c6823eaeb031ea799c07af2b7aa0
2020-04-17 15:18:40 +02:00
Harald Welte 370ea3f1e7 ansible: The network:osmocom:nightly key has changed *again* :(
Change-Id: I1ddc792c23d7c7d6db9aea694ac615c1f5449782
2020-04-14 17:14:38 +00:00
Pau Espin f55a3c67be ansible: gsm-tester: Intall dbus policy file from git repo
Since osmo-gsm-tester.git I17ee94b175deb88faff71e7788c482093693f8a8, the
file is available in the repository, so let's simply install it from
there.

Change-Id: Icb4827c4126c997633e23e4d778ff9b1a1836322
2020-04-10 17:35:20 +02:00
Pau Espin 39a66cc7f9 ansible: ogt: Create target amarisoft dirs in slaves
Change-Id: Idd013ac01db545771217808e458e916900fe89a1
2020-04-06 13:22:08 +02:00
Harald Welte 10bc752474 update OBS Release.key; the old one expired today.
Change-Id: Ic0ef942f7c2cce9d786ecc2447b10b808bac2ba9
2020-03-30 18:22:59 +02:00
Harald Welte 23150e1d15 ansible: ensure rsync is installed on all build slaves
Avoid the following error by the Osmocom-OBS_MinGW_weekly_publish job:

rsync -avz -e 'ssh -o '\''UserKnownHostsFile=/home/osmocom-build/jenkins/workspace/Osmocom-OBS_MinGW_weekly_publish/a1/default/a2/default/a3/default/label/obs/known_hosts'\'' -p 48' /home/osmocom-build/jenkins/workspace/Osmocom-OBS_MinGW_weekly_publish/a1/default/a2/default/a3/default/label/obs/out/ binaries@ftp.osmocom.org:web-files/windows
/tmp/jenkins1809827296988933592.sh: line 164: rsync: command not found

Change-Id: Id221729a8639f817a91888898e6a08a4dbce72c6
2020-03-11 10:00:11 +01:00
Pau Espin f9e0070e2d poky-sdk: Use first letter in caps (as in python bool)
Same as done in install-coverity/tasks/main.yml.

Change-Id: Ifbfe678e89bef3acd33e562888ad81093fa1230d
2020-03-03 16:26:52 +00:00
Pau Espin 54f9316fcf ansible: gsm-tester: Install osmo-gsm-tester dependency python3-numpy
Change-Id: I1a162607288a50d2376c4ed7760a8e6fb07f6a89
2020-03-02 14:22:47 +01:00
Harald Welte 4ddf61697a ansible: fix java for debian 10
Change-Id: I8b81edf420534726cd987f3f90efe79ca921f41a
2020-02-26 13:47:20 +00:00
Harald Welte 32f08347f7 ansible: Install open5gs dependencies on debian10
Change-Id: Ib58a9a91d34c4ebf10171bed8f0b26d9b34892b1
2020-02-26 13:47:20 +00:00
Harald Welte bee8f383e1 add build2-deb10build-ansible build slave
This is our first Debian 10 build slave

Change-Id: Iae80c5f73781d14ffbf124a476894d4631c83dc7
2020-02-26 13:47:20 +00:00
Harald Welte a17fa43f1a Make "ansible_distribution_version >= 9" work
The distribution version must not be quoted in this case (string) but
given as an integer.  Otherwise it will match only on 9, but not on 10.

Change-Id: I6ff3d16d2eac891e6663e8860eec2058478f4b79
2020-02-26 13:47:20 +00:00
Pau Espin 59be228b87 hosts: Add rpi4-deb9build-ansible
Change-Id: I3bea29c3a9fa9b4b6dc4df3cdde4bb9dbf7de47d
2020-02-26 08:39:27 +00:00
Vadim Yanitskiy 6755bc3092 ansible/setup-simtest.yml: Python2 is deprecated, switch to Python3
PySIM is about to switch to Python3, so Jenkins must be ready.

Change-Id: I555af88b0e6a5c082e1e0cbd6915649a8a942052
2020-02-26 07:56:23 +00:00
Harald Welte 21d464f836 README: Update version number of poky toolchain
Change-Id: Ic360a909c4615a3d6bfcea8f2e1c70a70b935ab4
2020-02-24 09:11:29 +00:00
Pau Espin bae9358550 ansible: gsm-tester: add jenkins user to osmo-gsm-tester group on slaves
Change-Id: Id5a06c19a4341311a86b87e3e9ac23d3656909b9
2020-02-21 21:54:47 +00:00
Pau Espin 584acbb7ab ansible: gsm-tester: Create remote rundir directories
These directories are needed by osmo-gsm-tester to copy in some binaries
and helper files required in the remote run node.

Change-Id: I802bdcc79e7787052364f6518e868d741cb040ac
2020-02-21 20:09:11 +00:00
Pau Espin 90987935bc ansible: gsm-tester: Use file module instead of manual mkdir
From ansible: [WARNING]: Consider using the file module with state=directory rather than running 'mkdir'.

Change-Id: I2c541878033360a9d427d13b62c1cc075d5f92b7
2020-02-21 20:09:11 +00:00
Pau Espin 53e8b0575f ansible: gsm-tester: Install patchelf's build dep autoconf
Change-Id: Ibe0e9b10d87c3630e2f12c9c32196e26213530ca
2020-02-21 20:09:11 +00:00
Pau Espin 5eb888e53e ansible: gsm-tester: Allow install srs related packages in Ubuntu
Change-Id: I3fdf2f4f390d27c53f073b38c1716da07f933b6d
2020-02-21 20:09:11 +00:00
Pau Espin cd4c9af8b5 ansible: gsm-tester: add some tags to tasks
Change-Id: I1fe26d519d4d63d4bef33c1db2abf98a40913f98
2020-02-21 20:09:11 +00:00
Pau Espin a63c19c786 ansible: slave: Skip ttcn3 install on ARM targets
eclipse-titan is not currently built for ARM targets (or it fails) on
osmocom OBS repos. Let's disable it since anyway we don't need to run
ttcn3 stuff on ARM slaves.

Change-Id: I83f95766fc601bfced6404db56af3bf8b871982f
2020-02-20 10:54:44 +00:00
Pau Espin 500bcafe65 ansible: gsm-tester: Install correct version of Soapdysdr lms module for srsLTE
At runtime, srsLTE expects that newer version of the module instead of old 0.5.2
one.

Change-Id: I1a66a1c4ba819c6c4887facc99045d099f2ccc53
2020-02-17 11:30:42 +01:00
Pau Espin c13af9ac58 ansible: Install libsoapysdr-dev as dependency for srsLTE
srsLTE supports using LimeSDR devices through SoapySDR.

Change-Id: Idd8baf934cb9245e0f897e84754905172b659e40
2020-02-13 20:17:34 +01:00
Pau Espin 9562073194 gsm-tester: Install helper scripts and sudoers.d files from git repo
Let's avoid duplicating and having to add manually the files here every
time a new helper is required by osmo-gsm-tester.

Change-Id: Ibbdd291f4c3f7aecdd5118cc2b3b35edaddf7c09
2020-02-11 19:12:46 +01:00
Pau Espin a264f9fcdd gsm-tester: Manual build and install of patchelf v0.10
Due to [1], we require both debian9 patchelf v0.9 and v0.10 to be
available and used by osmo-gsm-teser depending on the binary to be
patched.

[1] https://github.com/NixOS/patchelf/issues/192
Related: OS#4389
Change-Id: I28825d723b85900fb51cc5b8a9d14c6ef346e667
2020-02-11 14:00:32 +01:00
Harald Welte fcad862f86 coverity: Our coverity job needs curl; install it
curl \
 --form token="$token" \
 --form email=holger@freyther.de --form file=@Osmocom.tgz \
 --form version=Version --form description=AutoUpload \
 https://scan.coverity.com/builds?project=Osmocom
./jenkins.sh: line 39: curl: command not found

Change-Id: Ibf4a40860fe6c8424a60672dc4758b9f17c532a3
2020-02-08 13:28:54 +01:00
Harald Welte a42c3c1900 upgrade coverity to 2019.03
Change-Id: I0425b24a2afd979eb2a44dee512512746929770e
2020-02-08 13:13:04 +01:00
Pau Espin e94da921d7 ansible: gsm-tester: Add missing dep python3-setuptools
That's required when building python modules with pip.

Change-Id: I80785a4061e91126092a04080a2c9fdb288be49a
2020-02-03 16:03:47 +01:00
Pau Espin c17216723b ansible: mdbus2 is not nowadays available on Debian10
Change-Id: I0eb2ed28d9e3bc9054ffeb81c9e6fb5428af5bfb
2020-01-29 19:57:06 +01:00
Pau Espin f57eb28d13 Install srsLTE build dependencies in jenkins buildhosts
Change-Id: Ib42987416ee90868ab088bfa2f92d92c764088b0
2020-01-29 19:54:51 +01:00
Pau Espin 3456d3a2a5 ansible: gsm-tester: Install srsLTE dependencies
Change-Id: Ia6804d0d0c40ad2ebe8a09b0861f14f15578a834
2020-01-29 14:33:44 +01:00
Harald Welte 84cbb6fa13 Fix ansible playbooks after docker directory was removed here
In I30a61aebcadef5536e74edd35e1c75ef77a2da9f, we moved the Dockerfiles
from here to docker-playground.git, but failed to adjust the ansible
playbook that wants to rebuild those containers during setting up of
a build slave.

Change-Id: Ife64fdaf24107b0b31b8a6d4c78a1df420662ca0
Related: OS#4345
Closes: OS#4377
2020-01-26 14:03:51 +01:00
Harald Welte 8eb4fdb591 ansible: Install poky-sdk only on x86_64 architecture
The SDK is pre-compiled for a x86_64 host architecture, we cannot
use it e.g. on armhf (raspi).

Change-Id: Ia565d2dba427c00aa08a4eca62ac7410448ada04
2020-01-26 13:35:44 +01:00
Harald Welte 0bd157f0bd ansible/docker: ensure gnupg + crontab are installed
Both are required by docker, but seem to be missing from explicit
dpkg 'Requires' :/

TASK [docker : add docker gpg key to apt keyring] ********************************************************
fatal: [rpi4-deb9build-ansible]: FAILED! => {"changed": false, "msg": "Failed to find required executable gpg in paths: /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"}

TASK [docker : cleanup old docker images] ****************************************************************
[WARNING]: The value 0 (type int) in a string field was converted to '0' (type string). If this does not
look like what you expect, quote the entire value to ensure it does not change.

fatal: [rpi4-deb9build-ansible]: FAILED! => {"changed": false, "msg": "Failed to find required executable crontab in paths: /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"}

Change-Id: I2d342f85f6bc1b80eaafc7075552019fea147894
2020-01-26 13:35:33 +01:00
Oliver Smith 853f1ba318 osmocom_build_deps.yml: add inkscape
osmo-gsm-manuals needs inkscape to handle svgs. Not all osmo-* projects
are building in docker, so make sure it is also installed on the build
slaves directly.

Related: OS#4314
Change-Id: I63460336d2c4a7594ec9c5c9b60a3d43f0d157aa
2019-12-09 09:59:40 +01:00
Pau Espin 2d8903c363 ansible: gsm-tester: Enable ip forwarding and masquerading on boot
Some nodes in the internal network, such as LimeNetMicro, will need
Internet access to upgrade osmo-trx-lms from OBS repos.
It also makes it easier to update manually other nodes inside the
internal network.

Change-Id: I2c89cf9cfcb55b3153e7be212c68ffa8db0f6927
2019-12-02 11:15:14 +00:00
Pau Espin d8e2f0a682 ansible: Fix several file permission mask format
From ansible documentation [1]:
"""
For those used to /usr/bin/chmod remember that modes are actually octal
numbers. You must either add a leading zero so that Ansible's YAML
parser knows it is an octal number (like 0644 or 01777) or quote it
(like '644' or '1777') so Ansible receives a string and can do its own
conversion from string into number.
Giving Ansible a number without following one of these rules will end up
with a decimal number which will have unexpected results.
"""

[1] https://docs.ansible.com/ansible/latest/modules/template_module.html?highlight=template

Change-Id: I91008927c50016a837420c4249b5f69b9153572e
2019-11-27 09:30:28 +01:00
Pau Espin 55c6811513 ansible: gsm-tester-prod: Set DNS server to a working service
10.42.42.2 is simply one of the IP addresses assigned to osmo-gsm-tester
main unit on its own internal network (the one used between itself and
the connected BTS or helper hosts). There's no DNS server running there.
The main unit already runs lots of services, and there's really no need
for a DNS server running there, so simply point it to a working DNS
server.

Change-Id: I443cc560553c07635763a13bc73ead4835e6a009
2019-11-26 13:30:44 +01:00
Harald Welte 15e2204a9f osmocom_build_deps.yml: Move from python-nwdiag to python3-nwdiag
Change-Id: I9e3c65342d1bb62d7baa9d589930aa042fb5f7a9
Closes: OS#4279
Related: OS#4246
Depends: osmo-gsm-manuals Ia2c0c833329f8ecab1c427e0d2c002f17ab49a94
2019-11-23 09:20:22 +01:00
Pau Espin dffe2e859f ansible: gsm-tester-prod: Set dhcp ip addr for LimeNet-micro board
Change-Id: Ibcdf14ba09ab46240cd6bccac82f7b21f99123ef
2019-11-22 14:55:12 +00:00
Harald Welte bee13a5f53 osmocom_build_deps.yml: Add dahdi-source for libosmo-abis
Change-Id: Ic314c992f83d9fe1ea6035d67070d7c6004cc9e3
2019-11-11 17:13:00 +01:00
Harald Welte 5d627e65ea osmocom_build_deps: Add libaio-dev for osmo-ccid-client
Change-Id: I6c3b536bee3d1bbd6f526bc3765fc4ad9aa4a0dd
2019-11-11 17:13:00 +01:00
Pau Espin 70f8ca71d0 ansible: gsm-tester-rnd: Add nano3g device to static IP DHCP leases
Change-Id: Iaad3e9f5b6b1966322abb89f54611a2368400dcb
2019-09-20 15:02:46 +00:00
Harald Welte 02ebc242b8 Fix oc2g poky SDK installation
It's poky_installer_file, not poky_install_file.

Also, don't mandate a version from april that's no longer on
downloads.sysmocom.de.

This was broken since Change-Id I35f34a089311808cb21a064dd50e41cd1887b320

Change-Id: If3adf078fd89b9d0c5151cdbf745123df34bbaba
2019-05-15 14:46:02 +02:00