Files
ansible-matrix/roles/extras/tasks/general.yml
2023-04-19 01:45:05 +03:00

64 lines
1.9 KiB
YAML

---
- name: Include defaults
ansible.builtin.include_vars: defaults.yml
- name: Include variables for {{ matrix_extra }}
ansible.builtin.include_vars: "{{ matrix_extra }}.yml"
- name: Install dependencies for {{ matrix_extra }}
ansible.builtin.apt:
name: "{{ depends }}"
state: latest
- name: Install dependencies from custom repos for {{ matrix_extra }}
ansible.builtin.include_tasks: repo.yml
when: repo_depends is defined
loop: "{{ repo_depends }}"
- name: Create user for {{ matrix_extra }}
ansible.builtin.user:
name: "{{ matrix_extra }}"
system: true
home: /opt/{{ matrix_extra }}
shell: /bin/false
- name: Configure {{ matrix_extra }}
become_user: "{{ matrix_extra }}"
block:
- name: Put config in place for {{ matrix_extra }}
ansible.builtin.template:
src: "config/{{ matrix_extra }}.yaml.j2"
dest: "/opt/{{ matrix_extra }}/config.yaml.ansibled"
mode: 0644
backup: true
notify: Restart matrix target
register: config
- name: Put config in final destination for {{ matrix_extra }}
ansible.builtin.copy:
src: "/opt/{{ matrix_extra }}/config.yaml.ansibled"
dest: "/opt/{{ matrix_extra }}/config.yaml"
mode: 0644
remote_src: true
when: config.changed
- name: Include service-specific tasks
ansible.builtin.include_tasks: "{{ tasks }}.yml"
loop: "{{ matrix_extra_tasks }}"
loop_control:
loop_var: tasks
- name: Put systemd unit in place for {{ matrix_extra }}
ansible.builtin.template:
src: 'matrix-extra.service'
dest: "/etc/systemd/system/{{ matrix_extra }}.service"
mode: 0644
register: systemd_unit
- name: Enable systemd unit {{ matrix_extra }}
ansible.builtin.systemd:
daemon_reload: true
name: "{{ matrix_extra }}.service"
enabled: true
state: restarted
when: systemd_unit.changed