infrastructure/playbooks/serguzim.net.yml

44 lines
1.2 KiB
YAML

---
- name: Run all roles
hosts: serguzim_net
vars:
host_services: "{{ all_services | services_for_host(inventory_hostname) }}"
tasks:
- name: Install software
ansible.builtin.include_role:
name: software
apply:
tags: software
tags: software
- name: Run always role
ansible.builtin.include_role:
name: always
apply:
tags: always
tags: always
- name: Include service roles
ansible.builtin.include_role:
name: "{{ services_item.value.ansible_role | default(services_item.key, true) }}"
tasks_from: "{{ services_item.value.ansible_tasks | default(omit, true) }}"
vars_from: "{{ services_item.value.ansible_vars | default(omit, true) }}"
apply:
tags: "{{ services_item.key }}"
tags: always
loop: "{{ host_services | dict2items }}"
loop_control:
loop_var: services_item
label: "{{ services_item.key }}"
- name: Reload caddy on caddy tag
ansible.builtin.import_tasks:
file: tasks/reload-caddy.yml
tags:
- caddy
- never
- name: Stop unused services
ansible.builtin.import_tasks:
file: tasks/stop-unused.yml
tags: always