Ansible
Provisioning
Declarative provisioning for the whole lab, run from a single playbook.
- The entire lab is provisioned declaratively through one playbook (provision.yml).
- Ansible itself runs from a project-local Python virtual environment managed by uv, auto-activated on cd via direnv.
- Secrets (such as the k3s cluster token) are encrypted at rest with ansible-vault and never stored in plaintext.
- Upstream Ansible collections are pinned to exact versions to keep provisioning reproducible.