Terraform project that manages my Proxmox homelab. It uses Actions Runner Controller to run workflows inside my local network, and aims to mirror a cloud-like IaC workflow as closely as possible
Remote state is stored in HCP Terraform
Both docker and make are required for the local environment. All Terraform commands are executed inside of a container
Usage:
$ make terraform <command>The Makefile acts as a wrapper, so any Terraform subcommand can be called:
$ make terraform init
$ make terraform plan
$ make terraform applyAs this project uses HCP Terraform as backend, you also have to add a HCP Terraform API token in the environment file:
$ cp .env.example .envSecrets are stored as GitHub Actions secrets and injected in the workflows to execute plan/apply steps
GitHub Actions runs terraform plan on pull requests and posts the output as a comment. Merging to main triggers terraform apply automatically
Renovate monitors the repository and opens pull requests whenever new provider versions are released