aboutsummaryrefslogtreecommitdiffstats
path: root/ansible
diff options
context:
space:
mode:
Diffstat (limited to 'ansible')
-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