forked from evolix/ansible-roles
109 lines
2.8 KiB
YAML
109 lines
2.8 KiB
YAML
|
---
|
||
|
- name: "Remount /usr if needed"
|
||
|
ansible.builtin.include_role:
|
||
|
name: remount-usr
|
||
|
|
||
|
- name: Create autosysadmin directories
|
||
|
ansible.builtin.file:
|
||
|
path: "{{ item }}"
|
||
|
state: directory
|
||
|
owner: "root"
|
||
|
group: "root"
|
||
|
mode: "0750"
|
||
|
loop:
|
||
|
- "{{ autosysadmin_agent_bin_dir }}"
|
||
|
- "{{ autosysadmin_agent_lib_dir }}"
|
||
|
- "{{ autosysadmin_agent_auto_dir }}"
|
||
|
|
||
|
- name: Copy libraries
|
||
|
ansible.builtin.copy:
|
||
|
src: "upstream/lib/"
|
||
|
dest: "{{ autosysadmin_agent_lib_dir }}/"
|
||
|
owner: root
|
||
|
group: root
|
||
|
mode: "0750"
|
||
|
|
||
|
- name: Copy repair scripts
|
||
|
ansible.builtin.copy:
|
||
|
src: "upstream/repair/"
|
||
|
dest: "{{ autosysadmin_agent_bin_dir }}/"
|
||
|
owner: root
|
||
|
group: root
|
||
|
mode: "0750"
|
||
|
|
||
|
- name: Copy other utilities
|
||
|
ansible.builtin.copy:
|
||
|
src: "upstream/bin/"
|
||
|
dest: "{{ autosysadmin_agent_bin_dir }}/"
|
||
|
owner: root
|
||
|
group: root
|
||
|
mode: "0750"
|
||
|
|
||
|
### WARNING: thos files are explicitly marked as non-executable
|
||
|
### to prevent them from being run automatically by run-parts
|
||
|
|
||
|
- name: Copy restart scripts
|
||
|
ansible.builtin.copy:
|
||
|
src: "upstream/restart/"
|
||
|
dest: "{{ autosysadmin_agent_auto_dir }}/"
|
||
|
owner: root
|
||
|
group: root
|
||
|
mode: "0640"
|
||
|
|
||
|
- name: Ensure /etc/evolinux folder exists
|
||
|
ansible.builtin.file:
|
||
|
path: "/etc/evolinux"
|
||
|
state: directory
|
||
|
owner: "root"
|
||
|
group: "root"
|
||
|
mode: "0700"
|
||
|
|
||
|
- name: Copy the configuration file if missing
|
||
|
ansible.builtin.template:
|
||
|
src: "autosysadmin.cf.j2"
|
||
|
dest: "/etc/evolinux/autosysadmin"
|
||
|
owner: root
|
||
|
group: root
|
||
|
mode: "0640"
|
||
|
force: no
|
||
|
|
||
|
# Repair scripts are supposed to be 'on' by default
|
||
|
# A line "repair_XXX=off" is added to the file only if the script is to be disabled.
|
||
|
# That's why all the ternary logic for the state is reversed.
|
||
|
- name: Update value per variable
|
||
|
ansible.builtin.lineinfile:
|
||
|
dest: "/etc/evolinux/autosysadmin"
|
||
|
line: "{{ item }}={{ autosysadmin_config[item] | default(true) | bool | ternary('on', 'off') }}"
|
||
|
regexp: '^(#\s*)?{{ item }}=.*'
|
||
|
state: "{{ autosysadmin_config[item] | default(true) | bool | ternary('absent', 'present') }}"
|
||
|
register: _line
|
||
|
loop: "{{ autosysadmin_repair_scripts | union(['repair_all']) }}"
|
||
|
|
||
|
- name: Ensure restart folder exists
|
||
|
ansible.builtin.file:
|
||
|
path: "auto"
|
||
|
state: directory
|
||
|
owner: "root"
|
||
|
group: "root"
|
||
|
mode: "0700"
|
||
|
|
||
|
- name: Legacy scripts are removed
|
||
|
ansible.builtin.file:
|
||
|
path: "{{ general_scripts_dir }}/autosysadmin/{{ item }}"
|
||
|
state: absent
|
||
|
loop:
|
||
|
- repair_amavis.sh
|
||
|
- repair_disk.sh
|
||
|
- repair_elasticsearch.sh
|
||
|
- repair_http.sh
|
||
|
- repair_mysql.sh
|
||
|
- repair_opendkim.sh
|
||
|
- repair_php_fpm56.sh
|
||
|
- repair_php_fpm70.sh
|
||
|
- repair_php_fpm73.sh
|
||
|
- repair_php_fpm74.sh
|
||
|
- repair_php_fpm80.sh
|
||
|
- repair_php_fpm81.sh
|
||
|
- repair_redis.sh
|
||
|
- repair_tomcat_instance.sh
|