aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlexander Couzens <lynxis@fe80.eu>2018-07-16 19:23:23 +0200
committerAlexander Couzens <lynxis@fe80.eu>2018-07-19 23:04:24 +0200
commit5f555dbb400c6f0b2aa4ed91e39fb8cc9745d244 (patch)
tree20099aa92e463c660fc267a1a982cb1644e4c141
parent98c2d50040d7de50550df03126d61cdb6f5ae8ef (diff)
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
-rw-r--r--ansible/roles/osmocom-jenkins-slave/README.md1
-rw-r--r--ansible/roles/osmocom-jenkins-slave/defaults/main.yml3
-rw-r--r--ansible/roles/osmocom-jenkins-slave/tasks/main.yml89
-rw-r--r--ansible/roles/osmocom-jenkins-slave/tasks/osmocom_build_deps.yml85
4 files changed, 93 insertions, 85 deletions
diff --git a/ansible/roles/osmocom-jenkins-slave/README.md b/ansible/roles/osmocom-jenkins-slave/README.md
index 51bf6a1..de02b43 100644
--- a/ansible/roles/osmocom-jenkins-slave/README.md
+++ b/ansible/roles/osmocom-jenkins-slave/README.md
@@ -2,6 +2,7 @@
Support the following variables:
+* `install_osmocom_build_deps`: (true) install all osmocom runtime and build time dependencies
* `generic_slave`: (true) contains tasks used by the most osmocom jenkins slaves
* `osmocom_jenkins_slave_fstrim`: (false) calls fstrim periodical
* `ttcn3_slave`: (true) install titan ttcn3 compiler and prepares the docker-playground
diff --git a/ansible/roles/osmocom-jenkins-slave/defaults/main.yml b/ansible/roles/osmocom-jenkins-slave/defaults/main.yml
index e32b5a0..bdc13b4 100644
--- a/ansible/roles/osmocom-jenkins-slave/defaults/main.yml
+++ b/ansible/roles/osmocom-jenkins-slave/defaults/main.yml
@@ -3,6 +3,9 @@
# OS user
jenkins_user: jenkins
+# install all osmocom runtime and build time dependencies
+install_osmocom_build_deps: true
+
# E.g. a generic_slave requires different tasks as a
# special slave including the gsm-tester
generic_slave: true
diff --git a/ansible/roles/osmocom-jenkins-slave/tasks/main.yml b/ansible/roles/osmocom-jenkins-slave/tasks/main.yml
index cca3704..072792d 100644
--- a/ansible/roles/osmocom-jenkins-slave/tasks/main.yml
+++ b/ansible/roles/osmocom-jenkins-slave/tasks/main.yml
@@ -4,91 +4,6 @@
include_tasks: debian.yml
when: ansible_distribution == 'Debian'
-- name: install build utilities
- apt:
- name: "{{ item }}"
- cache_valid_time: 3600
- update_cache: yes
- with_items:
- - asciidoc
- - autoconf
- - autoconf-archive
- - automake
- - bc
- - bison
- - coccinelle
- - cppcheck
- - debhelper
- - devscripts
- - dh-autoreconf
- - dh-systemd
- - doxygen
- - flex
- - g++
- - gawk
- - gcc
- - gcc-arm-none-eabi
- - git
- - git-buildpackage
- - graphviz
- - libtool
- - libboost-all-dev
- - make
- - mscgen
- - osc
- - pkgconf
- - python-minimal
- - python-setuptools
- - python3
- - python3-setuptools
- - stow
- - texinfo
- # by gsm-manuals
- - python-nwdiag
- - python-pychart
- # by gapk
- - libasound-dev
- - libopencore-amrnb-dev
-
-- name: install build dependencies and libraries
- apt:
- name: "{{ item }}"
- cache_valid_time: 3600
- update_cache: yes
- install_recommends: no
- with_items:
- - docbook5-xml
- - libboost-dev
- - libc-ares-dev
- - libdbd-sqlite3
- - libdbi-dev
- - libffi-dev
- - libffi-dev
- - libfftw3-dev
- - libgmp-dev
- - libgnutls28-dev
- - libgps-dev
- - libgsm1-dev
- - libmnl-dev
- - libncurses5-dev
- - libortp-dev
- - libpcap-dev
- - libpcsclite-dev
- - libreadline-dev
- - libsctp-dev
- - libsigsegv-dev
- - libsnmp-dev
- - libsofia-sip-ua-glib-dev
- - libsqlite3-dev
- - libssl-dev
- - libsystemd-dev
- - libtalloc-dev
- - libuhd-dev
- - libusb-1.0-0-dev
- - libusb-dev
- - libzmq3-dev
- - sqlite3
-
- name: add user jenkins
user:
name: "{{ jenkins_user }}"
@@ -102,6 +17,10 @@
user: "{{ jenkins_user }}"
key: "{{ lookup('file', 'jenkins.osmocom.org.pub') }}"
+- name: include osmocom_build_deps.yml
+ include_tasks: osmocom_build_deps.yml
+ when: install_osmocom_build_deps
+
- name: include generic slave
include_tasks: generic-slave.yml
when: generic_slave
diff --git a/ansible/roles/osmocom-jenkins-slave/tasks/osmocom_build_deps.yml b/ansible/roles/osmocom-jenkins-slave/tasks/osmocom_build_deps.yml
new file mode 100644
index 0000000..733866c
--- /dev/null
+++ b/ansible/roles/osmocom-jenkins-slave/tasks/osmocom_build_deps.yml
@@ -0,0 +1,85 @@
+---
+- name: install build utilities
+ apt:
+ name: "{{ item }}"
+ cache_valid_time: 3600
+ update_cache: yes
+ with_items:
+ - asciidoc
+ - autoconf
+ - autoconf-archive
+ - automake
+ - bc
+ - bison
+ - coccinelle
+ - cppcheck
+ - debhelper
+ - devscripts
+ - dh-autoreconf
+ - dh-systemd
+ - doxygen
+ - flex
+ - g++
+ - gawk
+ - gcc
+ - gcc-arm-none-eabi
+ - git
+ - git-buildpackage
+ - graphviz
+ - libtool
+ - libboost-all-dev
+ - make
+ - mscgen
+ - osc
+ - pkgconf
+ - python-minimal
+ - python-setuptools
+ - python3
+ - python3-setuptools
+ - stow
+ - texinfo
+ # by gsm-manuals
+ - python-nwdiag
+ - python-pychart
+ # by gapk
+ - libasound-dev
+ - libopencore-amrnb-dev
+
+- name: install build dependencies and libraries
+ apt:
+ name: "{{ item }}"
+ cache_valid_time: 3600
+ update_cache: yes
+ install_recommends: no
+ with_items:
+ - docbook5-xml
+ - libboost-dev
+ - libc-ares-dev
+ - libdbd-sqlite3
+ - libdbi-dev
+ - libffi-dev
+ - libffi-dev
+ - libfftw3-dev
+ - libgmp-dev
+ - libgnutls28-dev
+ - libgps-dev
+ - libgsm1-dev
+ - libmnl-dev
+ - libncurses5-dev
+ - libortp-dev
+ - libpcap-dev
+ - libpcsclite-dev
+ - libreadline-dev
+ - libsctp-dev
+ - libsigsegv-dev
+ - libsnmp-dev
+ - libsofia-sip-ua-glib-dev
+ - libsqlite3-dev
+ - libssl-dev
+ - libsystemd-dev
+ - libtalloc-dev
+ - libuhd-dev
+ - libusb-1.0-0-dev
+ - libusb-dev
+ - libzmq3-dev
+ - sqlite3