docs: mark Phase 1 of automated deployment pipeline as completed
Some checks failed
Run nix flake check / flake-check (push) Failing after 1m50s
Periodic flake update / flake-update (push) Successful in 1m6s

Phase 1 is now fully implemented with parameterized multi-VM deployments
via OpenTofu. Updated status, tasks, and added implementation details.

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
This commit is contained in:
2026-01-31 23:33:14 +01:00
parent 076e22c338
commit b20ad9c275

27
TODO.md
View File

@@ -23,17 +23,30 @@ Automate the entire process of creating, configuring, and deploying new NixOS ho
## The Plan
### Phase 1: Parameterized OpenTofu Deployments ✓ (Partially Complete)
### Phase 1: Parameterized OpenTofu Deployments ✅ COMPLETED
**Status:** Template building works, single VM deployment works, need to parameterize
**Status:** Fully implemented and tested
**Implementation:**
- Locals-based structure using `for_each` pattern for multiple VM deployments
- All VM parameters configurable with smart defaults (CPU, memory, disk, IP, storage, etc.)
- Automatic DHCP vs static IP detection based on `ip` field presence
- Dynamic outputs showing deployed VM IPs and specifications
- Successfully tested deploying multiple VMs simultaneously
**Tasks:**
- [ ] Create module/template structure in terraform for repeatable VM deployments
- [ ] Parameterize VM configuration (hostname, CPU, memory, disk, IP)
- [ ] Support both DHCP and static IP configuration via cloud-init
- [ ] Test deploying multiple VMs from same template
- [x] Create module/template structure in terraform for repeatable VM deployments
- [x] Parameterize VM configuration (hostname, CPU, memory, disk, IP)
- [x] Support both DHCP and static IP configuration via cloud-init
- [x] Test deploying multiple VMs from same template
**Deliverable:** Can deploy a VM with custom parameters via OpenTofu
**Deliverable:** Can deploy multiple VMs with custom parameters via OpenTofu in a single `tofu apply`
**Files:**
- `terraform/vms.tf` - VM definitions using locals map
- `terraform/outputs.tf` - Dynamic outputs for all VMs
- `terraform/variables.tf` - Configurable defaults
- `terraform/README.md` - Complete documentation
---