Skip to content

Runbook: Add a New Terraform Module

  1. Create terraform/modules/<noun>-<noun>/
  2. Add main.tf, variables.tf, outputs.tfno backend block
  3. Add README.md describing inputs, outputs, and example usage
  4. Reference the module from the appropriate terraform/stacks/<layer>/main.tf
  5. Wire inputs in the relevant terragrunt/environments/<env>/<stack>/terragrunt.hcl
  6. Run bash tests/validate/run.sh — must pass before committing
  7. Add mock_outputs in any Terragrunt dependency {} blocks that reference new outputs
  8. Commit with feat(terraform): add <module-name> module