28 lines
881 B
YAML
28 lines
881 B
YAML
---
|
|
- name: Read snippet from template file
|
|
ansible.builtin.set_fact:
|
|
caddy_snippet_block: "{{ lookup('template', 'files/Caddyfile.j2') }}"
|
|
|
|
- name: Read current Caddyfile
|
|
ansible.builtin.slurp:
|
|
path: "{{ caddy_caddyfile_path }}"
|
|
register: caddy_caddyfile_raw
|
|
|
|
- name: Decode Caddyfile content
|
|
ansible.builtin.set_fact:
|
|
caddy_caddyfile_content: "{{ caddy_caddyfile_raw['content'] | b64decode }}"
|
|
|
|
- name: Check if snippet already exists
|
|
ansible.builtin.set_fact:
|
|
caddy_snippet_present: "{{ caddy_snippet_block in caddy_caddyfile_content }}"
|
|
|
|
- name: Add snippet if missing
|
|
ansible.builtin.blockinfile:
|
|
path: "{{ caddy_caddyfile_path }}"
|
|
marker: "# {mark} Ansible managed Caddy snippet for {{ host }}"
|
|
block: "{{ caddy_snippet_block }}"
|
|
create: true
|
|
mode: "0644"
|
|
when: not caddy_snippet_present
|
|
notify: Reload Caddy configuration
|