Switch from a custom caddy-dns/gandi image built on-host to the official caddy:2 image with per-host ACME HTTP-01 certificates. Removes the Dockerfile, env.j2 (Gandi token), on-host image build/ship/load tasks, the caddy-image Makefile target, and the wildcard DNS-01 Caddyfile. Each route now gets its own server block and automatic certificate. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| base | ||
| dev_env | ||
| docker_host | ||
| public_dns | ||
| reverse_proxy | ||
| README.md | ||
roles/
Local Ansible roles. No Galaxy roles — every role is written and maintained here
(ADR-003). Scaffold new ones with make new-role NAME=<name>; never create the
directory structure by hand.
Each role must have: a molecule/default/ scenario (Debian 13), a populated
README.md, and a filled-in meta/main.yml. Conventions: CLAUDE.md and
docs/runbooks/new-role.md.
Current state: base is partially built — its firewall concern (nftables) is
implemented and tested; the other concerns (SSH hardening, fail2ban, auditd, packages,
users) are not yet built. docker_host is scaffolded but has no tasks yet. dev_env (interactive
developer environment) is built and applied. See STATUS.md for the authoritative
breakdown.