unifi_controller_rhel/unifi.play
2014-05-27 15:29:23 +10:00

56 lines
1.9 KiB
Plaintext

---
- hosts: unifi_controllers
vars:
- unifi_zip_file: UniFi-2.4.6.zip
- unifi_zip_dest: /usr/local/src/UniFi-2.4.6.zip
- unifi_prefix: /opt
- unifi_uid: unifi
- unifi_gid: unifi
- ntp_server: pool.ntp.org
- java_home: /usr/lib/jvm/java-1.6.0-openjdk-1.6.0.0.x86_64
sudo: yes
tasks:
- name: abort if os is not suitable
when: ansible_os_family != "RedHat"
fail: "msg={{ansible_os_family}} is not supported by this playbook"
- name: install java and mongodb
when: ansible_os_family == "RedHat"
yum: name={{ item }} state=present
with_items:
- java-1.6.0-openjdk
- jakarta-commons-daemon-jsvc
- mongodb-server
- name: no need for the standard mongod service
service: name=mongod enabled=no state=stopped
- name: setup unifi group
group: name={{ unifi_gid }} system=yes state=present
- name: setup unifi user
user: name={{ unifi_uid }} home={{ unifi_prefix }}/UniFi createhome=no shell=/sbin/nologin system=yes state=present
- name: copy unifi zipball to host
copy: src={{ unifi_zip_file }} dest={{ unifi_zip_dest }}
- name: extract unifi
command: /usr/bin/unzip -o {{ unifi_zip_dest }} -d {{ unifi_prefix }} creates=/opt/UniFi
- name: fix permissions
command: /bin/chown -R {{ unifi_uid }}:{{ unifi_gid }} {{ unifi_prefix }}/UniFi
- name: symlink mongod binary to where unifi path
file: src=/usr/bin/mongod dest={{ unifi_prefix }}/UniFi/bin/mongod state=link
- name: install custom config.properties
template: src=config.properties dest={{ unifi_prefix }}/UniFi/data/config.properties owner={{ unifi_uid }} group={{ unifi_gid }}
- name: install init script
template: src=unifi.init dest=/etc/init.d/unifi owner=root group=root mode=755
- name: start unifi service
service: name=unifi enabled=yes state=started