Establishes a first-Sunday-of-the-month maintenance window orchestrated
by Ansible on LXC 304. Split into two playbooks to handle the self-reboot
paradox (the controller is a guest on the host being rebooted):
- monthly-reboot.yml: snapshots, tiered shutdown with per-guest polling,
fire-and-forget host reboot
- post-reboot-startup.yml: controlled tiered startup with staggered delays,
Pi-hole UDP DNS fix, validation, and snapshot cleanup
Also fixes onboot:1 on VM 109, LXC 221, LXC 223 and creates a recurring
Google Calendar event for the maintenance window.
Closes#26
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Closes#28
Adds mask-avahi.yml targeting the vms:physical inventory groups (all
Ubuntu QEMU VMs + ubuntu-manticore). Also adds avahi masking to the
cloud-init template so future VMs are hardened from first boot.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>