2026-01-23 11:20:54 +03:00
|
|
|
- name: Set sites defaults
|
|
|
|
|
ansible.builtin.set_fact:
|
|
|
|
|
caddy_sites_defaults: "{{ caddy_global_sites_defaults | combine(caddy_my_sites_defaults) }}"
|
|
|
|
|
|
2026-03-16 21:52:36 +03:00
|
|
|
- name: Configure Caddy Coraza CRS
|
|
|
|
|
when: "caddy_coraza"
|
|
|
|
|
block:
|
2026-04-08 08:12:29 +03:00
|
|
|
|
2026-03-16 21:52:36 +03:00
|
|
|
- name: Create sites config directories
|
|
|
|
|
loop: "{{ caddy_sites }}"
|
|
|
|
|
ansible.builtin.file:
|
|
|
|
|
path: "{{ caddy_sites_dir }}/{{ item.id }}"
|
|
|
|
|
state: "directory"
|
|
|
|
|
group: "{{ caddy_system_group }}"
|
|
|
|
|
mode: "0750"
|
2026-04-08 08:12:29 +03:00
|
|
|
|
2026-03-16 21:52:36 +03:00
|
|
|
- name: Generate sites coraza.conf config file
|
|
|
|
|
loop: "{{ caddy_sites }}"
|
|
|
|
|
loop_control:
|
|
|
|
|
loop_var: "site"
|
|
|
|
|
ansible.builtin.template:
|
|
|
|
|
src: "templates/coraza.conf"
|
|
|
|
|
dest: "{{ caddy_sites_dir }}/{{ site.id }}/coraza.conf"
|
|
|
|
|
group: "{{ caddy_system_group }}"
|
|
|
|
|
mode: "0640"
|
|
|
|
|
notify:
|
|
|
|
|
- "Restart Caddy"
|
2026-04-08 08:12:29 +03:00
|
|
|
|
2026-03-16 21:52:36 +03:00
|
|
|
- name: Generate sites crs-setup config file
|
|
|
|
|
loop: "{{ caddy_sites }}"
|
|
|
|
|
loop_control:
|
|
|
|
|
loop_var: "site"
|
|
|
|
|
ansible.builtin.template:
|
|
|
|
|
src: "templates/crs-setup.conf"
|
|
|
|
|
dest: "{{ caddy_sites_dir }}/{{ site.id }}/crs-setup.conf"
|
|
|
|
|
group: "{{ caddy_system_group }}"
|
|
|
|
|
mode: "0640"
|
|
|
|
|
notify:
|
|
|
|
|
- "Restart Caddy"
|
2026-04-08 08:12:29 +03:00
|
|
|
|
2026-03-16 21:52:36 +03:00
|
|
|
- name: Generate sites exclusions before request file
|
|
|
|
|
loop: "{{ caddy_sites }}"
|
|
|
|
|
loop_control:
|
|
|
|
|
loop_var: "site"
|
|
|
|
|
ansible.builtin.template:
|
|
|
|
|
src: "templates/exclusions-request-before.conf"
|
|
|
|
|
dest: "{{ caddy_sites_dir }}/{{ site.id }}/exclusions-request-before.conf"
|
|
|
|
|
group: "{{ caddy_system_group }}"
|
|
|
|
|
mode: "0640"
|
|
|
|
|
notify:
|
|
|
|
|
- "Restart Caddy"
|
2026-04-08 08:12:29 +03:00
|
|
|
|
2026-03-16 21:52:36 +03:00
|
|
|
- name: Generate sites exclusions after response file
|
|
|
|
|
loop: "{{ caddy_sites }}"
|
|
|
|
|
loop_control:
|
|
|
|
|
loop_var: "site"
|
|
|
|
|
ansible.builtin.template:
|
|
|
|
|
src: "templates/exclusions-response-after.conf"
|
|
|
|
|
dest: "{{ caddy_sites_dir }}/{{ site.id }}/exclusions-response-after.conf"
|
|
|
|
|
group: "{{ caddy_system_group }}"
|
|
|
|
|
mode: "0640"
|
|
|
|
|
notify:
|
|
|
|
|
- "Restart Caddy"
|
2026-01-14 11:03:59 +03:00
|
|
|
|
2026-04-08 08:12:29 +03:00
|
|
|
# FIXME: Should per site
|
2026-02-06 17:35:03 +03:00
|
|
|
- name: Copy bot barrier template
|
2026-03-16 21:52:36 +03:00
|
|
|
when: "caddy_bot_barrier"
|
2026-02-06 17:35:03 +03:00
|
|
|
ansible.builtin.copy:
|
|
|
|
|
src: "files/bot_barrier_template.html"
|
|
|
|
|
dest: "{{ caddy_config_dir }}/bot_barrier_template.html"
|
2026-01-20 12:27:03 +03:00
|
|
|
group: "{{ caddy_system_group }}"
|
2026-01-14 11:03:59 +03:00
|
|
|
mode: "0640"
|
|
|
|
|
notify:
|
2026-01-19 15:06:34 +03:00
|
|
|
- "Restart Caddy"
|
2026-01-14 11:03:59 +03:00
|
|
|
|
2026-02-06 17:35:03 +03:00
|
|
|
- name: Generate Caddyfile
|
|
|
|
|
ansible.builtin.template:
|
|
|
|
|
src: "templates/Caddyfile"
|
|
|
|
|
dest: "{{ caddy_config_dir }}/Caddyfile"
|
2026-01-20 12:27:03 +03:00
|
|
|
group: "{{ caddy_system_group }}"
|
2026-01-14 11:03:59 +03:00
|
|
|
mode: "0640"
|
|
|
|
|
notify:
|
2026-01-19 15:06:34 +03:00
|
|
|
- "Restart Caddy"
|
2026-01-23 11:20:54 +03:00
|
|
|
|
|
|
|
|
- name: Enable and start Caddy
|
|
|
|
|
ansible.builtin.service:
|
|
|
|
|
name: "{{ caddy_my_name }}"
|
|
|
|
|
state: "started"
|
|
|
|
|
enabled: true
|