123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143 |
- ---
-
- - name: install debian packages
- apt:
- name: "{{librenms_deb_packages}}"
- state: present
-
- - name: create librenms group
- group:
- name: "{{librenms_group}}"
- state: present
- system: yes
-
- - name: create librenms user
- user:
- name: "{{librenms_user}}"
- comment: "LibreNMS system user"
- shell: /sbin/nologin
- password_lock: yes
- home: "{{librenms_home}}"
- group: "{{librenms_group}}"
- system: yes
-
- - name: add apache user to librenms group
- user:
- name: www-data
- groups: "{{librenms_group}}"
- append: yes
-
- - name: download librenms
- unarchive:
- src: "https://github.com/librenms/librenms/archive/{{librenms_version}}.zip"
- dest: /tmp
- remote_src: yes
- creates: "/tmp/librenms-{{librenms_version}}/README.md"
- become: yes
- become_user: "{{librenms_user}}"
-
- - name: move librenms to its home
- copy:
- remote_src: yes
- src: "/tmp/librenms-{{librenms_version}}/"
- dest: "{{librenms_home}}"
- become: yes
- become_user: "{{librenms_user}}"
-
- - name: set directory owner
- file:
- dest: "{{librenms_home}}"
- owner: "{{librenms_user}}"
- group: "{{librenms_group}}"
- mode: 0770
-
- - name: Set the appropriate permissions
- file:
- path: "{{librenms_home}}"
- owner: "{{librenms_user}}"
- group: "{{librenms_group}}"
- mode: g+w
- recurse: true
-
- - name: Set the appropriate acl
- acl:
- path: "{{librenms_home}}/{{item}}"
- etype: group
- permissions: rwx
- recursive: true
- default: true
- state: present
- loop:
- - rrd
- - logs
- - storage
- - bootstrap/cache/
-
- - name: clean tmp
- debug: msg="TBD"
-
- - name: run composer
- command: ./scripts/composer_wrapper.php install --no-dev
- args:
- chdir: "{{librenms_home}}"
- creates: "{{librenms_home}}/composer.phar"
- become: yes
- become_user: "{{librenms_user}}"
-
- - name: setup config file
- template:
- src: config.php.j2
- dest: "{{librenms_home}}/config.php"
- owner: "{{librenms_user}}"
- group: "{{librenms_group}}"
-
- - name: setup database
- command: php build-base.php
- args:
- chdir: "{{librenms_home}}"
- become: true
- become_user: "{{librenms_user}}"
-
- - name: create admin account
- command: php adduser.php {{librenms_admin_user}} {{librenms_admin_pass}} 10
- args:
- chdir: "{{librenms_home}}"
- become: true
- become_user: "{{librenms_user}}"
-
- - name: enable apache modules
- apache2_module:
- state: present
- name: "{{item}}"
- loop:
- - rewrite
- - ssl
- notify:
- - restart apache
-
- - name: deploy apache template
- template:
- src: "{{librenms_apache_template}}"
- dest: /etc/apache2/sites-available/librenms.conf
- notify:
- - restart apache
-
- - name: enable librenms site
- file:
- src: /etc/apache2/sites-available/librenms.conf
- dest: /etc/apache2/sites-enabled/librenms.conf
- state: link
- notify:
- - restart apache
-
- - name: setup cron and logrotate
- copy:
- src: "{{librenms_home}}/{{ item.src }}"
- dest: "{{item.dest}}"
- remote_src: true
- loop:
- - { src: librenms.nonroot.cron, dest: /etc/cron.d/librenms }
- - { src: misc/librenms.logrotate, dest: /etc/logrotate.d/librenms }
-
- - name: configure snmpd
- debug: msg="TBD"
|