| - name: "enable epel yum repo" |
| yum: name=epel-release state=present |
| - name: "install packages" |
| yum: |
| name: |
| - vim |
| - git |
| - wget |
| - gcc-c++ |
| - collectd |
| - screen |
| - patch |
| - java-1.8.0-openjdk-devel |
| state: present |
| - name: "configure node shutdown" |
| shell: shutdown +{{ shutdown_delay_minutes }} &> {{ cluster_basedir }}/.shutdown creates={{ cluster_basedir}}/.shutdown |
| when: shutdown_delay_minutes > 0 |
| - name: "create install directory on all hosts" |
| file: path={{ install_dir }} state=directory owner={{ cluster_user }} group={{ cluster_user }} |
| - name: "install maven & hub" |
| unarchive: src={{ tarballs_dir }}/{{ item.tarball }} dest={{ install_dir }} creates={{ item.install }} |
| with_items: |
| - { tarball: "{{ maven_tarball }}", install: "{{ maven_home }}" } |
| - { tarball: "{{ hub_tarball }}", install: "{{ hub_home }}" } |
| - name: "set correct owner & group for maven & hub home" |
| file: path={{ item }} recurse=yes owner={{ cluster_user }} group={{ cluster_user}} |
| with_items: |
| - "{{ maven_home }}" |
| - "{{ hub_home }}" |
| - name: "configure collectd" |
| template: src=collectd.conf dest=/etc/collectd.conf |
| when: "'metrics' in groups" |
| notify: |
| - restart collectd |
| - name: "ensure collectd is running (and enable it at boot)" |
| service: name=collectd state=started enabled=yes |
| when: "'metrics' in groups" |