]> Repos - server-iac/log
server-iac
8 days agoFix 5 bugs found via dry-run provision of a real Linode main
Andrew Gundersen [Fri, 17 Jul 2026 19:54:46 +0000 (19:54 +0000)]
Fix 5 bugs found via dry-run provision of a real Linode

- spamd, not spamassassin, is the actual systemd unit name
- /etc/chasquid/certs ships non-empty by default (README.certs), breaking
  the symlink-to-certs-orig conversion
- /etc/letsencrypt/renewal-hooks/deploy doesn't exist until certbot has
  actually run once - can't assume it from just installing the package
- Ubuntu's default nginx site conflicts with our own default_server
- chasquid task ordering: domains/certs must exist before chasquid.conf
  is deployed (and its restart triggered), or chasquid crash-loops fast
  enough to hit systemd's restart backoff before domains/ gets populated
  a moment later - reproduces the exact bug from the start of this project

8 days agoDocument GeoDNS-first client routing decision
Andrew Gundersen [Fri, 17 Jul 2026 19:25:04 +0000 (19:25 +0000)]
Document GeoDNS-first client routing decision

8 days agoInitial Terraform + Ansible capture of the mail/git/web server
Andrew Gundersen [Fri, 17 Jul 2026 18:56:59 +0000 (18:56 +0000)]
Initial Terraform + Ansible capture of the mail/git/web server