Files
ansible-general/roles/caddy/tasks/main.yaml
2025-07-19 20:01:09 +03:00

44 lines
1.3 KiB
YAML

---
- name: Ensure legacy caddy apt repository not present
ansible.builtin.file:
path: /etc/apt/sources.list.d/caddy-stable.list
state: absent
- name: Add caddy apt repository
ansible.builtin.deb822_repository:
name: caddy-stable
uris: https://dl.cloudsmith.io/public/caddy/stable/deb/debian
signed_by: https://dl.cloudsmith.io/public/caddy/stable/gpg.key
suites: any-version
components:
- main
when: >
(ansible_distribution == 'Debian' and ansible_distribution_major_version | int == 11) or
(ansible_distribution == 'Ubuntu' and ansible_distribution_major_version | int < 24)
- name: Install caddy
ansible.builtin.apt:
name: caddy
- name: Remove default settings from caddyfile
ansible.builtin.blockinfile:
path: /etc/caddy/Caddyfile
marker: "{mark}"
marker_begin: ':80 {'
marker_end: '# https://caddyserver.com/docs/caddyfile'
state: absent
validate: 'caddy validate --config %s --adapter caddyfile'
backup: true
- name: Put caddy general config in place
ansible.builtin.blockinfile:
path: /etc/caddy/Caddyfile
marker: "# {mark} ANSIBLE MANAGED BLOCK general"
block: |
{
email {{ caddy_admin_email }}
}
validate: 'caddy validate --config %s --adapter caddyfile'
backup: true
notify: Reload caddy