Private
Public Access
2
0
Files
bgwaf/seb4itik/byow/roles/caddy/tasks/caddy_config.yml

94 lines
2.6 KiB
YAML
Raw Normal View History

- name: Set sites defaults
ansible.builtin.set_fact:
caddy_sites_defaults: "{{ caddy_global_sites_defaults | combine(caddy_my_sites_defaults) }}"
2026-01-14 11:03:59 +03:00
- name: Create sites config directories
2026-01-20 12:27:03 +03:00
loop: "{{ caddy_sites }}"
2026-01-14 11:03:59 +03:00
ansible.builtin.file:
path: "{{ caddy_config_dir }}/sites/{{ item.id }}"
2026-01-14 11:03:59 +03:00
state: "directory"
2026-01-20 12:27:03 +03:00
group: "{{ caddy_system_group }}"
2026-01-14 11:03:59 +03:00
mode: "0750"
- name: Generate sites coraza.conf config file
2026-01-20 12:27:03 +03:00
loop: "{{ caddy_sites }}"
2026-01-14 11:03:59 +03:00
loop_control:
loop_var: "site"
ansible.builtin.template:
src: "templates/coraza.conf"
dest: "{{ caddy_config_dir }}/sites/{{ site.id }}/coraza.conf"
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
- name: Generate sites crs-setup config file
2026-01-20 12:27:03 +03:00
loop: "{{ caddy_sites }}"
2026-01-14 11:03:59 +03:00
loop_control:
loop_var: "site"
ansible.builtin.template:
src: "templates/crs-setup.conf"
dest: "{{ caddy_config_dir }}/sites/{{ site.id }}/crs-setup.conf"
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
- name: Generate sites exclusions before request file
2026-01-20 12:27:03 +03:00
loop: "{{ caddy_sites }}"
2026-01-14 11:03:59 +03:00
loop_control:
loop_var: "site"
ansible.builtin.template:
src: "templates/exclusions-request-before.conf"
dest: "{{ caddy_config_dir }}/sites/{{ site.id }}/exclusions-request-before.conf"
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
- name: Generate sites exclusions after response file
2026-01-20 12:27:03 +03:00
loop: "{{ caddy_sites }}"
2026-01-14 11:03:59 +03:00
loop_control:
loop_var: "site"
ansible.builtin.template:
src: "templates/exclusions-response-after.conf"
dest: "{{ caddy_config_dir }}/sites/{{ site.id }}/exclusions-response-after.conf"
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
- name: Generate Caddyfile
ansible.builtin.template:
src: "templates/Caddyfile"
2026-01-20 12:27:03 +03:00
dest: "{{ caddy_config_dir }}/Caddyfile"
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
- name: Copy bot barrier template
ansible.builtin.copy:
src: "files/bot_barrier_template.html"
2026-01-20 12:27:03 +03:00
dest: "{{ caddy_config_dir }}/bot_barrier_template.html"
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 14:08:31 +03:00
# - name: Generate GeoIP config file
# when: "caddy_geoip_account_id != None and caddy_geoip_license_key != None"
# ansible.builtin.template:
# src: "templates/GeoIP.conf"
# dest: "/etc/GeoIP.conf"
# mode: "0640"
# notify:
# - "Update GeoIP databases"
- name: Enable and start Caddy
ansible.builtin.service:
name: "{{ caddy_my_name }}"
state: "started"
enabled: true
daemon_reload: true