Commit Graph

185 Commits

Author SHA1 Message Date
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
Pau Espin 6691cf4dbb ansible: gsm-tester: Add IP addr for umtrx
Change-Id: I7fb65e3c337fc82c787e925fbbdf9eaf7569defd
2018-11-07 10:23:42 +00:00
Holger Hans Peter Freyther 7e5e3ece47 misc: Install patchelf to add/set an rpath if wanted
Change-Id: I6e4ad2e3855af7bcefc22d4190cc4e6f58581857
2018-11-06 13:14:05 +00:00
Holger Hans Peter Freyther f091b3e9e3 ansible: Skip liblimesuite-dev for debian 8.0
There is no installable liblimesuite-dev for Debian 8.0 and the
playbook execution fails. Install it for Debian 9.0 or later.

Change-Id: I0cee652b9d9703dc10b6105711a26f33cc2a3fda
2018-11-02 13:03:40 +00:00
Holger Hans Peter Freyther bcd7207c40 ansible: Future proof for debian releases after debian9.0
buster has a liblua5.3-dev, openjdk-8-jre-headless and the ttcn3
packages should work as well.

Change-Id: I76f516bbe503d15d9210ab14e7d9dd024e0ce72f
2018-11-02 13:03:29 +00:00
Pau Espin 0370864469 ansible: ogt: install udhcpc and iperf3
These tools are used during gprs data plane setup and performance
testing.

Change-Id: I5beddd74fca726c5ea2c9527836a9f50d92b4ce8
2018-10-26 19:25:53 +00:00
Pau Espin 8c47ea27c3 ansible: ogt: Add new local IP addr to be available for resources
Change-Id: I32574a935289fa208647d16663b77c0708c0572c
2018-10-26 19:25:53 +00:00
Pau Espin cee37b8004 ansible: ogt: Deploy osmo-gsm-tester_netns_exec.sh
Related: OS#2308
Change-Id: I587dd5630b211a906351f064c718f8f4c5fe6273
2018-10-26 19:25:53 +00:00
Harald Welte 24f2ef00b2 Add osmo-remsim to gerrit + master build verification
... which introduces a requirement for libcsv-dev in ansible.

Change-Id: I2ac65947ce9ecc071f774dc4df0f08c99c16c632
2018-10-15 02:06:22 +02:00
Pau Espin 52fb2808d6 ansible: Install liblimesuite-dev and setup limesdr rights in gsm-tester
Change-Id: I7fafae340221cac63e33bccabcce6fd8f4385514
2018-10-09 14:03:26 +02:00
Holger Hans Peter Freyther c52d3505f8 OsmocomBB: Add lua5.3 for the scriping interface
Change-Id: Ia3bd58b98d1e248a92ddd171fb16a23ca8e0b29d
2018-08-30 15:09:54 +00:00
Pau Espin fa24bc77ef ansible: osmocom_build_deps: Add cmake
cmake is required to build LimeSuite, and its not currently installed in
the build slave.

Change-Id: I1808a2394798cd11a0bee8f664c7d18fa71cd5b8
2018-08-27 19:33:12 +02:00
Pau Espin e0c094ddb4 ansible: gsm-tester: Add extra IP for LimeSDR
Change-Id: Ic0fddfc0eaf884cdd5436139675a5a19fafa96b9
2018-08-27 19:25:34 +02:00
Pau Espin eb844d933a ansible: osmo-gsm-tester-prod: Add DHCP lease for secondary muliTRX nanobts
Change-Id: I3967d7b4203f5361dc03074dcd82c870d60c8aac
2018-07-26 18:15:29 +02:00
Alexander Couzens c1c9052f11 ansible: add playbook setup-simtest
Change-Id: Iab74a2b3fc3148bce815b2dadd1fd683c4b64c44
2018-07-19 23:04:24 +02:00
Alexander Couzens d2cacbd784 ansible: osmocom-jenkins-slave: add var install_jenkins_utilities
To select if some utilities including qemu/debootstrap/fakeroot will be installed.
Usefull for small setups e.g. simtester

Change-Id: I72f4460b8550da191e74a44be0ee3eeb3b2d7769
2018-07-19 23:04:24 +02:00
Alexander Couzens 6330cf1d98 ansible: osmocom-jenkins-slave: debian.yml: don't install recommends
Pulls a lot of packages

Change-Id: I894455ea779ece84c403f768a1260a1cf2528389
2018-07-19 23:04:24 +02:00
Alexander Couzens 5f555dbb40 ansible: osmocom-jenkins-slave: move installing build + runtime deps into own file
For small nodes (e.g. simtester) the full blown packages are not required nor supported.
In this case only the jenkins user and the ssh keys will be setted up.

Change-Id: I469a8012b124516bfd9c4d4dd3a3fe0e1ff80bb6
2018-07-19 23:04:24 +02:00
Alexander Couzens 98c2d50040 ansible: osmocom-jenkins-slave: add variables to the README.md
Change-Id: I878ed30ee2f44d98635511011c17f0f0e986bcc9
2018-07-19 21:00:41 +00:00
Harald Welte 6866852c37 jobs: add master+gerrit verification job for gapk
Change-Id: Iedf3b43c164ae7e3e653820284c4d4ddaa545784
2018-07-03 15:24:25 +00:00
Pau Espin f82bc2a1c9 ansible: gsm-tester: Add IP addr for osmo-bts-octphy to bind to
Change-Id: I708960790e330a24c653f162b767d3b3ca4d145d
2018-07-02 17:08:06 +00:00
Pau Espin 6f5120ca37 ansible: gsm-tester: Assign IP addr in different range to nanobts
We currently use range around 10.42.42.1-10 for local dynamically
assigned IP addresses (osmo-msc, osmo-bsc, etc.).
The range 10.42.42.50-60 for local statically assigned IP addresses
(to run osmo-bts-trx sysmocell-5k for instance, where the other end
is cofigured with a static dst addr).
For remote addresses, we use IPs in the range 10.42.42.110-120.
Let's create a new range in 10.42.42.120-130 for remote addressess
assigned by udhcpd server.

nanobts assigned assdresses are moved to the latest group to
differentiate them easily and show that they are not IP addr used
locally.

Change-Id: I9eadb0329a670ce6c2254520d9c86bfbdc898b3a
2018-07-02 17:08:04 +00:00
Harald Welte 98cc650b48 ansible: Add various additional packages to osmocom-workstation
Change-Id: I9d22cd6e4d3a3c8c685362bb62cd2a6ef467c461
2018-06-13 11:12:18 +00:00
Harald Welte 1600f979e7 osmocom-workstatin: change default user to osmocom
Change-Id: I35da5f2276730c7f81d5a1c2e6878ea3e23bca3b
2018-06-13 11:12:18 +00:00
Harald Welte 3547a81e37 ansible: osmocom-workstation: Add user to 'docker' group
Change-Id: I43169dfb39525ffe16a3ed1cbf5360b47f9f8a00
2018-06-13 11:12:18 +00:00
Harald Welte 18b8307d8f ansible: osmocom-workstation: clone ttcn-3 deps
Change-Id: Ib0169c858c3c0610e49d01f1dafee5c725ddc7df
2018-06-13 11:12:18 +00:00
Harald Welte 03dcb21b4a ansible: Use SDK/toolchain for 2.3.4, not 2.3.2
Change-Id: Ia39284acce65c5779b71154662f3f55349a86960
2018-06-13 11:12:18 +00:00
Alexander Couzens feda39b8e7 ansible: gsm-tester: change production gsm_modems to 3
In the production setup, there are only 3 valid modems.
Moving the variable into the host_vars so they can have
different amount of modem between rnd & prod.

Change-Id: Ic51a14a339bb9be50504a27a724f6f428ee7304f
2018-06-12 16:17:27 +00:00
Alexander Couzens ecb756f37c anisble: gsm-tester: uhubctl: add "-n 1d50:4002"
uhubctl -p 123456 -a 1 is rejecting because uhubctl detects two hubs.
Selecting only one hub.

Fixes the error message:
    Error: changing port state for multiple hubs at once is not supported.
    Use -l to limit operation to one hub!

Change-Id: I2e3c248e4eaef39f18ff38d1055db6d552fc4d20
2018-06-12 16:17:06 +00:00
Alexander Couzens b3ce1d1f2d ansible: fix deprecation of "include:"
"include:" has been deprecated in favour of "include_tasks:".

Change-Id: I6e1bb11e9392f7da9ed554c37f9625daa0950308
2018-06-12 16:16:30 +00:00
Alexander Couzens e5182e1f69 ansible: fix deprecation of filter "| changed"
"| changed" filter will be removed in ansible 2.9

Change-Id: Idf11d54d60b78733ed212f04940cee15b3a55400
2018-06-12 16:16:28 +00:00
Harald Welte 6cce4c2d20 add "osmocom-workstation" role
this role can be used to provision developer workstations, which
includes a git clone of all osmocom git repositories as well as
development tools like valgrind, gdb, ccache, wireshark, ...

Change-Id: I1a943079470db97f41c9c38318feb0716daa7cd5
2018-06-10 15:27:08 +02:00
Alexander Couzens 5707b730f8 ansible: gsm-tester: fix apt_repository tasks
Mistyped filename and apt_repostory

Change-Id: Icc97d9d2355f8922853d6b21cb8a95f532347031
2018-06-07 14:57:43 +02:00
Alexander Couzens 9c8b13d2ad ansible: gsm-tester-bts: remove role prefix in names
The role is prefixed anyway by newer ansible's. No need
to manual add it

Change-Id: I4ef16b2e9ab594dd0f76baf43979e73b51282c14
2018-06-07 14:57:43 +02:00
Alexander Couzens da0788f89c ansible: setup-gsm-tester.yml: use role gsm-tester-bts
Change-Id: I7cf033605ad1da6c3ea887b5ba72507bcd6991c7
2018-06-07 14:57:43 +02:00
Alexander Couzens 22672f06d7 ansible: gsm-tester: add udev rule to allow jenkins to access sispm devices
Change-Id: Idd0426a8130046e7aacc02421440eb403bd88888
2018-06-07 14:57:43 +02:00
Alexander Couzens 1620014708 ansible: gsm-tester-network: start all network interfaces after adding new ones
Change-Id: I197dadb68cffeba4c451d2fbfe40075039a67cb8
2018-06-07 12:48:28 +00:00
Alexander Couzens b25b15d8bd ansible: gsm-tester: add missing python dependencies
Change-Id: I0871df95a968f8f9e9318882c5397a16cba1814a
2018-06-07 12:48:17 +00:00
Alexander Couzens 7c7b83c93e ansible: gsm-tester: only check once the apt freshness
Change-Id: I40462fed216b1c0844a41172001dd2aaf8a8d04c
2018-06-07 12:47:55 +00:00
Alexander Couzens 088d2d6bb7 ansible: udhcpd: add systemd service file
The udhcpd /etc/init.d/ script is racy and fails often.

Change-Id: Ie373119a902a001f093599e289cadb8b2d290668
Fixes: OS#3311
2018-06-07 12:47:44 +00:00
Alexander Couzens 4be1378a89 ansible: osmocom-jenkins-slave: install autoconf-archive
Required at least by osmo-sysmon.

Change-Id: I5c6536bfb68ffdda7ec7bf71f5d0efeb1cb77e61
2018-06-05 19:23:27 +02:00
Alexander Couzens 246fd550f0 README.md: mark the version bold
Some parts will fail if used with earlier version.

Change-Id: Iab002a51afc2cc60875696eff0cd538ff9a49eca
2018-06-05 11:55:39 +02:00
Pau Espin cd23e09f36 ansible: Document docker login step
This step requires manual interaction since a password will be asked.

Change-Id: I193c721490c115a17c2f6753b3b139d7dc33aa39
2018-05-25 12:16:09 +02:00
Alexander Couzens acfaecc008 ansible: add a simple README.md
Change-Id: I96057bb92faa8e3375c5bad20ef1536475807b67
2018-05-24 16:35:33 +02:00
Alexander Couzens 8508b81403 ansible: gsm-tester: add jenkins to the dialout group
To access tty*

Change-Id: Icc7b3fa9ca7c14360d78069d8d42e6039afda32b
2018-05-24 16:29:29 +02:00
Alexander Couzens c5dd87a811 ansible/setup-gsm-tester: add docker
Change-Id: Idfd96c4e3556b93ca85acb94a2176ec269a906d1
2018-05-24 16:23:23 +02:00
Alexander Couzens 68c3ca0203 osmocom-jenkins-slave: install graphiz
Change-Id: Iad1f10d057475ca15bc3104b5c97fa57e29db15e
2018-04-24 11:26:24 +02:00
Alexander Couzens b6bb7258a0 ansible: osmocom-jenkins-slave: fix crontab for fstrim
Change-Id: Ib6aae8d1d986346dc7bc0fc945bab6491fff4f3f
2018-04-16 16:30:24 +02:00
Alexander Couzens a2f86fb5be osmocom-jenkins-slave: call fstrim periodically
Change-Id: I82c497f476abf43148e8d7c027f53b87b5a738fb
2018-04-11 21:28:47 +00:00
Alexander Couzens bdfc5f9fdf ansible: gsm-tester-bts: add OBS osmocom:nightly to install osmocom utilities
Useful for admininistrators.

Change-Id: I7b704d402c83db54401d1c06acb715cce821f2e4
2018-04-11 21:28:31 +00:00
Alexander Couzens c9aa32161b ansible: gsm-tester: install sispmctl to control usb power sockets
Change-Id: Ie1af197d4b24e25196e10d2afa3ab8eea73ad729
2018-04-11 21:28:31 +00:00
Alexander Couzens 3b29270ff5 ansible: gsm-tester-modems: improve name
Use same scheme as of gsm-tester-bts.
This should improve readability.

Change-Id: I4186baaf565442c96555b723622c93b1cbd9f4f7
2018-04-11 21:28:30 +00:00
Alexander Couzens 5791cfd9db ansible: gsm-tester: move usrp tasks to gsm-tester-bts
Change-Id: I9caebed94c3473051b82e2cdc35f6dfb9f862084
2018-04-11 21:28:30 +00:00
Alexander Couzens 692f1f1221 ansible: gsm-tester-bts: install ip.access dependencies
Change-Id: I47f578c4b9bb7b1dc81ccf93a7e82a335f6968a2
2018-04-11 21:28:30 +00:00
Alexander Couzens 9464e66c91 ansible: setup-gsm-tester: use udhcpd as dhcp server
Required for ip.access
Change-Id: I5ae43ebcd3c87e625110d8ff6afa0476f4b1facf
2018-04-11 21:28:30 +00:00
Alexander Couzens 717531ac98 ansible: add role udhcpd: setup a udhcpd server
Change-Id: Ia272ae9c2b245d0a06f84b91f50dd875d4488e02
2018-04-11 21:28:30 +00:00
Alexander Couzens 1b528d6527 ansible: hosts: gsm-tester: use ansible_host to have more readable ansible output
Change-Id: Ia7b60ace8afd0e2cc47c535da1856d4f34fdd735
2018-04-11 21:28:29 +00:00
Alexander Couzens fd5b9fd097 osmocom-jenkins-slave: install gsm-manual dependencies
Change-Id: I3fa60bd986220e065b1e9eca4308f2b089d505d9
2018-04-11 16:51:24 +00:00
Alexander Couzens 56b2a5a723 ansible: docker: cleanup old docker images
Fixes: OS#3144
Change-Id: I77fe38775b3f6055691bbf654de4019916b75fd7
2018-04-10 14:00:24 +02:00
Alexander Couzens fa9f2a145f ansible jenkins-slave: only setup ttcn3_slave on debian stretch
Change-Id: Iaf043008890da94098986468e1fd3d9578810206
2018-04-05 19:58:51 +00:00
Alexander Couzens 8490e65155 ansible: install eclipse-titan
Change-Id: I354271b7c573484b7f538a5a4bb29753a950d5f9
2018-04-05 19:58:51 +00:00
Alexander Couzens 4f9a7bef5c ansible: hosts: add host2-deb8build-ansible host2-deb9build-ansible
Change-Id: If0a21f24483b2c1c6ea56e366c5858eee50f17e1
2018-04-05 19:58:51 +00:00
Alexander Couzens 0acdcdc220 ansible: create a new group coverity-slaves to choose the target of coverity
Change-Id: I8b09ca50db938c5c7087a74e5d2575412a916ff6
2018-04-05 19:58:51 +00:00
Alexander Couzens cb2c930723 ansible: hosts: use inventory with ansible_host to have more readable ansible output
As long they don't have a dns entry, use the ansible_host variable

Change-Id: I0888e9b66cd1077dcdada97fb5ee2d56def516e3
2018-04-05 19:58:51 +00:00
Alexander Couzens 6288079faf ansible: hosts: add build2-deb8build-ansible build2-deb9build-ansible slaves
Change-Id: Iede01ab10f0a9582b3a3a9a3ebbbc684b94a3c0a
2018-04-05 19:58:51 +00:00
Alexander Couzens 350af695e3 ansible: osmocom-jenkins-slave: don't install recommend packages
libuhd-dev would recommend uhd-host which seems not be installable on debian jessie in an lxc.
However we should have already listed all explicit dependencies and shouldn't need
anything else

Change-Id: I6859b8180916a8e172d32030da06ba6fa27d5c45
2018-04-05 19:58:50 +00:00
Harald Welte 482c99223e ansible: Add docbook5-xml to jenkins build slaves
Change-Id: Ic0a33a87a61c9cdd1ca60a023bbf2920d04fefcd
Related: OS#3072
2018-04-02 19:35:13 +00:00
Alexander Couzens 43a7e83921 ansible: jenkins-slave: setup ttcn3 repository
Change-Id: I3aa1bf52f6fcae129278dab7081ea5cfc97d0759
2018-03-27 15:11:44 +02:00
Harald Welte e0e8ac5395 ansible/roles/osmocom-jenkins-slave/tasks/main.yml: Fix alpha sorting
Change-Id: Ifdcdcd76edf791d66cbd44daa0797c61ab5d83f0
2018-03-17 14:40:31 +01:00
Alexander Couzens 196402ac65 add ansible playbooks
Introduce playbooks to do:
- setup-jenkins-slave - setup a usualy or special jenkins-slave
- setup-gsm-tester - setup the gsm-tester

Change-Id: I7007a4e6c38f73843390ec2b3b91133aff21e36a
2018-03-16 09:18:11 +00:00