aboutsummaryrefslogtreecommitdiffstats
path: root/ansible/roles
AgeCommit message (Collapse)AuthorFilesLines
2021-03-15ansible: ogt: uhubctl has new cmdline syntax to specify portsPau Espin Pedrol1-2/+2
Change-Id: Ie57d85dc0a66e053247cd5bb92a4b2dea4eb4309
2021-03-10ansible: jenkins-slave: enable ntpdOliver Smith2-0/+11
Enable ntpd to prevent clock difference issues reported by jenkins. I just saw them appearing with one of the new raspberry pis. Related: https://jenkins.osmocom.org/jenkins/computer/ (shows clock diff) Change-Id: I2685e60221b0f3baa3f9e6076c01acf37cd38444
2021-03-08ansible: remove raspbian default user "pi"Oliver Smith1-0/+9
Add a new subtask that deletes Raspbian's default user "pi" with UID=1000, so we can use the UID for the jenkins user. When the ansible playbook is running, root access via ssh is already configured, so we don't need the user "pi" anymore. Related: OS#5055 Change-Id: If0cee6d35016c487eca02752625732dd03fad350
2021-03-08ansible: explicitly give jenkins user UID=1000Oliver Smith1-0/+1
docker-playground.git assumes that its containers run as UID=1000, otherwise some will fail with errors like: + osmo-clean-workspace.sh + chmod -R +w . chmod: changing permissions of '.': Operation not permitted Make this assumption explicit with "uid: 1000" in "add user jenkins". This causes ansible to verify that the UID is really 1000, and if it is not, it changes the UID. A follow-up patch will remove Raspbian's default user of the same UID. Related: OS#5055 Change-Id: I6efc9e74049e179d2f86655217195e76789ba77d
2021-03-08ansible: fix apt deprecation warning about loopsOliver Smith8-264/+239
Fix deprecation warnings like the following: [DEPRECATION WARNING]: Invoking "apt" only once while using a loop via squash_actions is deprecated. Instead of using a loop to supply multiple items and specifying `name: "{{ item }}"`, please use `name: ['libjansson-dev', 'libulfius-dev']` and remove the loop. This feature will be removed in version 2.11. Related: OS#5055 Change-Id: I57b9ce690e8167249468954f3e62d14c7a92fcfc
2021-01-13ansible: tasks/osmo-ci: clone osmo-gsm-manualsOliver Smith1-0/+7
Perform the initial clone of osmo-gsm-manuals.git, just like osmo-ci.git. Related: OS#4912 Change-Id: I39a09a4297c7c78357b3d4db4ab89547fa08db59
2020-11-28ansible: Fix OBS directory namingHarald Welte2-4/+4
It's really annoying that OBS uses Debian_8.0 and Debian_9.0 (for 8.x and 9.x) and then Debian_10 for 10.x. Let's work around this by some conditional vars_file trickery, hopefully once and for all. Change-Id: I45c4752774f44332b3f9aaf875f49043c03ec5ca
2020-11-28osmocom-jenkins-slave: Re-orderHarald Welte1-4/+4
Install TTCN3 before installing build-deps, as build-deps requires libulfius, which is only provided by network:osmocom:latest feed, which in turn is only activated as part of the TTCN3 / TITAN installation. Change-Id: I66f1d5f7479a6d028abdac0cc6f4000faa78b135
2020-11-18ansible: add role for 'podman'Harald Welte2-0/+40
podman has one particularly interesting feature which docker rejected years ago: The ability to run a container in a pre-existing namespace. This is quite useful for some of our test setups, particularly those that involve hdlc net-devices Change-Id: I4b14599f39c07ec83fa4222f9d040d443caae3e6
2020-11-17ansible: ogt: Install new dependency python3-watchdogPau Espin Pedrol1-0/+1
As of osmo-gsm-tester.git Change-Id I938602ee890712fda82fd3f812d8edb1bcd05e08, python3-watchdog is required. Change-Id: I35026e82b255cd4e06b4211c4829cd12be59976e
2020-11-15ansible/docker: Use docker.io on architectures not supported by docker-ceHarald Welte1-1/+7
The docker company official builds are only present for amd64, but not for other architectures. Let's use the Debian docker.io package in such situations. Change-Id: Id85137fc0eb7fa5e2b31aa928c78bfdaadc281ac
2020-11-14ansible: ttcn3-slave: Use libfftranscode 0.3Harald Welte1-2/+2
0.3 is the first version for which we have i386 builds Change-Id: I8bc20e43a82ff797a4f70db476cddaab39fdc2a2
2020-11-14ansible: ttcn3-slave: Fix for Debian 10 slavesHarald Welte1-2/+2
Change-Id: I943e4a8e49e4f95abf1e44dc297d30c950580680
2020-11-14ansible: roles/docker: Add ca-certificatesHarald Welte1-0/+1
If that package is not installed, adding the GPG key fails with SSL certificate verification, at least on a debian10 i386 lxc: TASK [add docker gpg key to apt keyring] ************************************************************* fatal: [gtp0-deb10build32-ansible]: FAILED! => {"changed": false, "msg": "Failed to download key at https://download.docker.com/linux/debian/gpg: Request failed: <urlopen error [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:1056)>"} Change-Id: I58259a99258c9c7471e1fcf03a3a7b62fa9c6a48
2020-11-02ttcn3-slave.yml: don't hard-code amd64 as the dpkg architectureHarald Welte1-2/+6
We have no clue what the host architecture will be... Change-Id: I32c0905c8e077faa02984ea67c452fcdb81440da
2020-08-31ansible: osmocom-jenkins-slave: install SRS packages only on debian >= 9Alexander Couzens1-0/+1
Before debian 9 those packages aren't available. e.g. libczmq-dev or libsoapysdr-dev Change-Id: I019ec01dc7e0a53fa4ce9e8579fbafb3916f559b
2020-08-14ansible: osmocom-jenkins-slave: osmocom_build_deps: install ↵Alexander Couzens1-0/+24
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-03ansible/docker: set overlayfs2 and ipv6Alexander Couzens3-0/+17
overlayfs2 should be the default anyway. Enable it on all hosts, since it was enabled on older hosts. Change-Id: I20728d6017204c3978e23376baa89de6e91fed1e
2020-06-25ansible/gsm-tester: Install patchelf 0.11 on PATHPau Espin Pedrol1-8/+8
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-04-17ansible: gsm-tester: Add dependency python3-websocketPau Espin Pedrol1-0/+1
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-17jenkins: Add libnl-3 for osmo-uecupsHarald Welte1-0/+2
Change-Id: I97114b60a647c6823eaeb031ea799c07af2b7aa0
2020-04-14ansible: The network:osmocom:nightly key has changed *again* :(Harald Welte1-9/+9
Change-Id: I1ddc792c23d7c7d6db9aea694ac615c1f5449782
2020-04-10ansible: gsm-tester: Intall dbus policy file from git repoPau Espin Pedrol2-17/+9
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-06ansible: ogt: Create target amarisoft dirs in slavesPau Espin Pedrol1-0/+3
Change-Id: Idd013ac01db545771217808e458e916900fe89a1
2020-03-30update OBS Release.key; the old one expired today.Harald Welte1-9/+9
Change-Id: Ic0ef942f7c2cce9d786ecc2447b10b808bac2ba9
2020-03-11ansible: ensure rsync is installed on all build slavesHarald Welte1-0/+2
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-03poky-sdk: Use first letter in caps (as in python bool)Pau Espin Pedrol1-4/+4
Same as done in install-coverity/tasks/main.yml. Change-Id: Ifbfe678e89bef3acd33e562888ad81093fa1230d
2020-03-02ansible: gsm-tester: Install osmo-gsm-tester dependency python3-numpyPau Espin Pedrol1-0/+1
Change-Id: I1a162607288a50d2376c4ed7760a8e6fb07f6a89
2020-02-26ansible: fix java for debian 10Harald Welte1-2/+12
Change-Id: I8b81edf420534726cd987f3f90efe79ca921f41a
2020-02-26ansible: Install open5gs dependencies on debian10Harald Welte1-0/+15
Change-Id: Ib58a9a91d34c4ebf10171bed8f0b26d9b34892b1
2020-02-26Make "ansible_distribution_version >= 9" workHarald Welte3-5/+5
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-21ansible: gsm-tester: add jenkins user to osmo-gsm-tester group on slavesPau Espin Pedrol1-3/+14
Change-Id: Id5a06c19a4341311a86b87e3e9ac23d3656909b9
2020-02-21ansible: gsm-tester: Create remote rundir directoriesPau Espin Pedrol1-0/+16
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-21ansible: gsm-tester: Use file module instead of manual mkdirPau Espin Pedrol1-2/+6
From ansible: [WARNING]: Consider using the file module with state=directory rather than running 'mkdir'. Change-Id: I2c541878033360a9d427d13b62c1cc075d5f92b7
2020-02-21ansible: gsm-tester: Install patchelf's build dep autoconfPau Espin Pedrol1-0/+9
Change-Id: Ibe0e9b10d87c3630e2f12c9c32196e26213530ca
2020-02-21ansible: gsm-tester: Allow install srs related packages in UbuntuPau Espin Pedrol1-1/+18
Change-Id: I3fdf2f4f390d27c53f073b38c1716da07f933b6d
2020-02-21ansible: gsm-tester: add some tags to tasksPau Espin Pedrol1-9/+88
Change-Id: I1fe26d519d4d63d4bef33c1db2abf98a40913f98
2020-02-20ansible: slave: Skip ttcn3 install on ARM targetsPau Espin Pedrol1-1/+1
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-17ansible: gsm-tester: Install correct version of Soapdysdr lms module for srsLTEPau Espin Pedrol1-0/+1
At runtime, srsLTE expects that newer version of the module instead of old 0.5.2 one. Change-Id: I1a66a1c4ba819c6c4887facc99045d099f2ccc53
2020-02-13ansible: Install libsoapysdr-dev as dependency for srsLTEPau Espin Pedrol2-0/+2
srsLTE supports using LimeSDR devices through SoapySDR. Change-Id: Idd8baf934cb9245e0f897e84754905172b659e40
2020-02-11gsm-tester: Install helper scripts and sudoers.d files from git repoPau Espin Pedrol5-81/+25
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-11gsm-tester: Manual build and install of patchelf v0.10Pau Espin Pedrol1-0/+25
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-08coverity: Our coverity job needs curl; install itHarald Welte1-0/+6
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-08upgrade coverity to 2019.03Harald Welte1-1/+1
Change-Id: I0425b24a2afd979eb2a44dee512512746929770e
2020-02-03ansible: gsm-tester: Add missing dep python3-setuptoolsPau Espin Pedrol1-0/+1
That's required when building python modules with pip. Change-Id: I80785a4061e91126092a04080a2c9fdb288be49a
2020-01-29ansible: mdbus2 is not nowadays available on Debian10Pau Espin Pedrol1-1/+8
Change-Id: I0eb2ed28d9e3bc9054ffeb81c9e6fb5428af5bfb
2020-01-29Install srsLTE build dependencies in jenkins buildhostsPau Espin Pedrol1-0/+16
Change-Id: Ib42987416ee90868ab088bfa2f92d92c764088b0
2020-01-29ansible: gsm-tester: Install srsLTE dependenciesPau Espin Pedrol1-0/+14
Change-Id: Ia6804d0d0c40ad2ebe8a09b0861f14f15578a834
2020-01-26Fix ansible playbooks after docker directory was removed hereHarald Welte1-2/+2
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-26ansible/docker: ensure gnupg + crontab are installedHarald Welte1-1/+5
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