boma/terraform
sjat 917005174a feat(tf): provision askari — cx23/hel1 (CAX11 ARM was out of stock)
ARM (cax11) unavailable in all EU locations 2026-06-14; fell back to cx23 (x86,
same 2/4/40 spec, cheaper in hel1). Server created (id 141153963); offsite.yml
generated into the directory inventory.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-14 16:23:01 +02:00
..
environments feat(tf): provision askari — cx23/hel1 (CAX11 ARM was out of stock) 2026-06-14 16:23:01 +02:00
modules fix(tf): declare required_providers in modules; pin offsite lock 2026-06-14 16:14:05 +02:00
README.md Add Terraform VM-provisioning skeleton 2026-05-30 14:10:01 +02:00

terraform/

Infrastructure provisioning. Terraform owns VM existence only — creating and destroying Proxmox VMs. It writes no DNS records and configures nothing inside a VM; Ansible owns all of that.

  • modules/proxmox_vm/ — reusable VM module (Proxmox only).
  • environments/{staging,production}/ — separate state per environment. Add a VM by editing local.vms in that env's main.tf, then make tf-plantf-applytf-inventory.

Rationale: ADR-006. Handoff to Ansible: ADR-009. Secrets via TF_VAR_* only — never in .tfvars. Not yet terraform inited — see STATUS.md.