55 lines
1.7 KiB
YAML
55 lines
1.7 KiB
YAML
- name: Reload systemd manager configuration
|
|
ansible.builtin.systemd:
|
|
daemon_reload: true
|
|
listen: compose_systemd
|
|
|
|
- name: Find which services had a docker-compose.yml updated
|
|
ansible.builtin.set_fact:
|
|
compose_restart_list: "{{ (compose_restart_list | default([])) + [item.item.name] }}"
|
|
loop: "{{ compose_update.results }}"
|
|
loop_control:
|
|
label: "{{ item.item.name }}"
|
|
when: item.changed
|
|
listen: compose_restart
|
|
|
|
- name: Find which services had their .env updated
|
|
ansible.builtin.set_fact:
|
|
compose_restart_list: "{{ (compose_restart_list | default([])) + [item.item.name] }}"
|
|
loop: "{{ compose_env_update.results }}"
|
|
loop_control:
|
|
label: "{{ item.item.name }}"
|
|
when: item.changed
|
|
listen: compose_restart
|
|
|
|
- name: Restart MariaDB
|
|
ansible.builtin.service:
|
|
name: mariadb
|
|
state: restarted
|
|
when: not mariadb_restarted
|
|
listen: restart_mariadb # hijack handler for early restart
|
|
|
|
- name: Set MariaDB as restarted
|
|
ansible.builtin.set_fact:
|
|
mariadb_restarted: true
|
|
when: not mariadb_restarted
|
|
listen: restart_mariadb
|
|
|
|
- name: Restart compose services
|
|
ansible.builtin.systemd:
|
|
state: restarted
|
|
name: "{{ docker_compose_service }}@{{ item }}"
|
|
loop: "{{ compose_restart_list | default([]) | unique }}"
|
|
when: compose_restart_list is defined
|
|
listen: compose_restart
|
|
|
|
- name: Start compose services and enable on boot
|
|
ansible.builtin.service:
|
|
name: "{{ docker_compose_service }}@{{ item.name }}"
|
|
state: started
|
|
enabled: true
|
|
loop: "{{ docker_compose_deploy }}"
|
|
loop_control:
|
|
label: "{{ docker_compose_service }}@{{ item.name }}"
|
|
when: item.enabled is defined and item.enabled is true
|
|
listen: compose_enable
|