diff options
author | Alexander Couzens <lynxis@fe80.eu> | 2018-07-16 19:23:23 +0200 |
---|---|---|
committer | Alexander Couzens <lynxis@fe80.eu> | 2018-07-19 23:04:24 +0200 |
commit | 5f555dbb400c6f0b2aa4ed91e39fb8cc9745d244 (patch) | |
tree | 20099aa92e463c660fc267a1a982cb1644e4c141 | |
parent | 98c2d50040d7de50550df03126d61cdb6f5ae8ef (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
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 |