Commit Graph

119 Commits

Author SHA1 Message Date
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
Pau Espin 363015700f ansible: Document how to use ProxyJump to access ipv6 nodes
Change-Id: I31b8f8ea5ed84a676c97ad2f6802be19f0e394d9
2019-04-26 15:59:01 +02:00
Alexander Couzens 0d33d9204a generalize the install-poky-sdk role to support multiple sdks
Change-Id: I35f34a089311808cb21a064dd50e41cd1887b320
2019-04-26 15:38:12 +02:00
Alexander Couzens d745bee443 osmocom-jenkins-slave: fix jessie-backports as it got deprecated
Change-Id: Idae47a6529f6a870e29ab688c3479b7ef4ba200a
2019-04-26 15:38:02 +02:00
Harald Welte bea2c9c70d ttcn3-slave: Add libfftranscode0 + libffstranscode-dev packages
Those proprietary libraries are required for testing APER based
protocols such as those spoken on IuCS, IuPS and Iuh.

Change-Id: I07489575d0b71c36b35096ecf1e2aab9577cb43e
2019-04-21 12:31:04 +02:00
Pau Espin 6fa6e95342 ansible: gsm-tester: Install osmo-gsm-tester_netns_setup.sh
Change-Id: Iaa8802b86429abfaf84fc0f20bd207737dbc9812
2019-04-04 16:38:39 +02:00
Pau Espin 8233bf7e9a ansible: gsm-tester: Remove net iface name from hash input
Otherwise every time the interface is added (ie when it goes back to
default netns), the generate name changes due to DEVPATH containing
current name at the end of the path.

Change-Id: I87c686caa23a3b39e48e0762d4323a59be7cd4b8
2019-04-04 15:42:08 +02:00
Pau Espin 1304063a4a ansible: osmo-gsm-tester: Make modem net ifaces persistent
Currently ofono doesn't catch network interface renaming (takes the name
at ofono startup time).
If a modem crashes, its net iface is unregistered and registered again,
and it can happen that the new name is not the same as before (for
instance, wwan8->wwan0 if wwan0 is located on another netns).

These udev rules allow creating persistent unique names to prevent modem
crashes resulting on interface name changing.

dhcpcd is known to race against udev when managing dev interfaces,
bringing them up before udev sometimes, and then udev is unable to
rename it. By denying dhcpcd from managing modem ifaces (ww* and r*
according to kernel/our rules), we get rid of this issue.

Related: OS#3881
Change-Id: Ic3ef75285aa84f9aa606562cd2f6166de186c1a6
2019-04-03 16:06:21 +00:00
Harald Welte 255724fb4a jenkins-slave: Use "jessie-backports" only on jessie systems
Change-Id: Id62c03b9759367bd5bbe20144e9ad7048d12e61b
2019-04-03 12:24:05 +02:00
Harald Welte 915a2f76aa build_deps: add libulfius-dev and libjansson-dev for osmo-remsim
Change-Id: I8d490babb4f1f47e94d15c74a8fba439522e1e18
2019-03-15 08:21:00 +01:00
Harald Welte 225dbeefe1 osmocom-jenkins-slave: Deploy osmo-ci and build docker images
This is periodically performed by https://jenkins.osmocom.org/jenkins/job/update-osmo-ci-on-slaves
but in order to get to the point of updating it, we must at least
have done one initial deployment of the repository before.  This is
done by the takss in the new osmo-ci.yml

Closes: OS#3773
Change-Id: I581b8713cfdb3ca2ef7f0925730974056981e448
2019-01-31 20:27:50 +01:00
Harald Welte d2300f83b1 ansible/install-poky-sdk: Use "-y" command line argument
At least with current ansible, this patch is required to avoid
the poky SDK installer waiting indefinitely to somebody answering
his prompts on stdin.

Change-Id: I084a5a152f00bbd484f5616d417fa1486cb79413
2019-01-29 22:53:44 +01:00
Max 844f25dfbf Add liboping dependency for osmo-sysmon
Related: SYS#2655
Change-Id: I6198cd14ff86c5d8203d57674a17aa388f21c19d
2019-01-29 12:35:26 +00:00
Harald Welte 326221b87c ansible: Install 'sdcc' compiler for libusrp firmware on build slaves
Change-Id: I2fa8fa1a195079a0d8beda6a0aa4fc090ca37970
2019-01-11 18:54:12 +01:00
Holger Hans Peter Freyther c184523221 gsm_tester: Add lua-socket dependency used by the scripts
Change-Id: Iea51362a592c5b42413cb6d72677d01a0e357555
2018-12-28 14:54:19 +00:00
Holger Hans Peter Freyther 7af1fef220 gsm-tester: Install liblua5.3-dev as mobile dependency
Change-Id: I188361cceacde60b9b0b954549d63a34ba81646a
2018-12-28 13:48:24 +00:00
Holger Hans Peter Freyther 245ddd1cec Reserve an ip address for the osmo-bts-virtual
Change-Id: Ia3b52d6fc66efc032b7de4769ad603da177e13da
2018-12-13 09:40:03 +00:00
Holger Hans Peter Freyther 8f33ecf33b ansible: Wrap distro version number as string for ansible
Change-Id: I58591ee37c6ec1479778c3f90ed8004a7e2adf1e
2018-11-09 02:00:47 +00:00
Pau Espin 0c8e950e86 ansible: gsm-tester: Support power cycling multiple quad modems
uhubctl doesn't support acting on several hubs from same vendor at once.

Change-Id: I01e698c96240130ed6f632f82383f6020d2a3b81
2018-11-07 10:23:42 +00:00
Pau Espin da939e6cdf ansible: gsm-tester: prod has now 8 modems attached
4 EC20 modems were attached,  and the issue with only 3 out of the 4
showing up was fixed a while ago.

Change-Id: I0e0876fd5581e9eb56c498078ae8cd8c68ede5b5
2018-11-07 10:23:42 +00:00