Close the "there are no tests/lint" gap noted in AGENTS.md with something stronger than --check --diff.
Reference. eoli3n/dotfiles (README → Related configs) runs Ansible roles inside throwaway Docker containers in CI — the established pattern for validating dotfiles/provisioning roles without a real host.
Scope.
- Container-based smoke test per OS baseline (at least Debian/Ubuntu for
base + terminal_dotfiles).
- Wire into CI so role changes are exercised on push.
- Complements, not replaces,
scripts/ansible_smoketest.sh.
Watch-outs. The terminal profile is the natural test target (no personal, no server_hardening, safe on any box). confirm_overwrite=false and the first-launch config-dir behavior need to hold inside the container.
Close the "there are no tests/lint" gap noted in AGENTS.md with something stronger than
--check --diff.Reference.
eoli3n/dotfiles(README → Related configs) runs Ansible roles inside throwaway Docker containers in CI — the established pattern for validating dotfiles/provisioning roles without a real host.Scope.
base+terminal_dotfiles).scripts/ansible_smoketest.sh.Watch-outs. The
terminalprofile is the natural test target (nopersonal, noserver_hardening, safe on any box).confirm_overwrite=falseand the first-launch config-dir behavior need to hold inside the container.