ansible-caddy/roles/install/tasks/caddy-config.yml
GregoryDosh 0c2dec049d
All checks were successful
Version Bump Galaxy.yml / Version Bump Galaxy.yml (push) Successful in 4s
feat: add cloudflare cf token & internal tls templates, split https autoredirect, bump caddy ver
2025-12-03 16:30:27 -06:00

87 lines
2.5 KiB
YAML

# SPDX-License-Identifier: AGPL-3.0-or-later
# SPDX-FileCopyrightText: 2025 Dosh LLC
---
- name: Ensure config paths exist
become: true
when: item is not mapping
ansible.builtin.file:
path: "{{ item }}"
owner: "{{ CADDY_USER_NAME }}"
group: "{{ CADDY_GROUP_NAME }}"
mode: "0770"
state: directory
with_items:
- "{{ CADDY_CONFIG_PATH }}"
- name: Ensure config paths empty
become: true
when: item is not mapping
ansible.builtin.file:
path: "{{ item }}"
state: absent
with_items:
- "{{ CADDY_CONFIG_PATH }}/acme_step_pki"
- "{{ CADDY_CONFIG_PATH }}/waf"
- name: Config - Caddyfile & Extensions
become: true
ansible.builtin.template:
src: "{{ item.src }}"
dest: "{{ item.dest }}"
owner: "{{ CADDY_USER_NAME }}"
group: "{{ CADDY_GROUP_NAME }}"
mode: "0640"
register: _caddy_caddyfile_paths
with_items:
- {
src: "{{ CADDY_CADDYFILE_BASIC_RATELIMIT }}",
dest: "{{ CADDY_CONFIG_PATH }}/basic_ratelimit",
}
- {
src: "{{ CADDY_CADDYFILE_CORS }}",
dest: "{{ CADDY_CONFIG_PATH }}/cors",
}
- {
src: "{{ CADDY_CADDYFILE_AUTHENTIK_AUTH_PROXY }}",
dest: "{{ CADDY_CONFIG_PATH }}/authentik_auth_proxy",
}
- { src: "{{ CADDY_ENVFILE }}", dest: "{{ CADDY_CONFIG_PATH }}/.env" }
- {
src: "{{ CADDY_CADDYFILE_GLOBALS }}",
dest: "{{ CADDY_CONFIG_PATH }}/globals",
}
- {
src: "{{ CADDY_CADDYFILE_TLS_INTERNAL_CA }}",
dest: "{{ CADDY_CONFIG_PATH }}/tls_internal_ca",
}
- {
src: "{{ CADDY_CADDYFILE_TLS_DNS_CLOUDFLARE_LETSENCRYPT }}",
dest: "{{ CADDY_CONFIG_PATH }}/tls_dns_cloudflare_letsencrypt",
}
- {
src: "{{ CADDY_CADDYFILE_LOCAL_SRC }}",
dest: "{{ CADDY_CONFIG_PATH }}/Caddyfile",
}
- {
src: "{{ CADDY_CADDYFILE_REDIRECT_BAD_ACTORS }}",
dest: "{{ CADDY_CONFIG_PATH }}/redirect_bad_actors",
}
- {
src: "{{ CADDY_CADDYFILE_ROBOTS_TXT }}",
dest: "{{ CADDY_CONFIG_PATH }}/robots.txt",
}
- {
src: "{{ CADDY_CADDYFILE_SECURITY_TXT }}",
dest: "{{ CADDY_CONFIG_PATH }}/security.txt",
}
- {
src: "{{ CADDY_CADDYFILE_WELLKNOWN_SECURITY }}",
dest: "{{ CADDY_CONFIG_PATH }}/wellknown_security",
}
- { src: "{{ CADDY_CADDYFILE_WS }}", dest: "{{ CADDY_CONFIG_PATH }}/ws" }
- {
src: "{{ CADDY_ROOT_CA }}",
dest: "{{ CADDY_CONFIG_PATH }}/ca-root.crt",
}
notify:
- "Restart caddy"