Summary: Terraform setup for 7Mind — module layout, state backend, and conventions for infrastructure changes. Sources: TBD — fill from Terraform repo / directory Last updated: 2026-05-15


Repo / Location

TBD — is Terraform in its own repo, or in a directory within an existing repo? What is the root path?

State Backend

TBD — where is Terraform state stored? (GCS bucket? Terraform Cloud?) State bucket name and locking mechanism.

Module Structure

TBD — describe the module layout:

terraform/
├── environments/
│   ├── prod/
│   └── staging/
├── modules/
│   ├── <module-name>/
│   └── ...
└── ...

Provider Versions

TBD — list pinned provider versions (Google, Cloudflare, GitHub, etc.) and where they are pinned.

How to Apply Changes

TBD — the correct workflow for infrastructure changes:

  1. Make changes in a branch
  2. GitHub Actions runs terraform plan on PR
  3. Merge triggers terraform apply (or manual step?)
  4. Never run terraform apply locally against production

Conventions

TBD — naming conventions for resources, required tags/labels on GCP resources, module authoring rules.

Sensitive Outputs

TBD — any outputs that contain secrets (service account keys, API tokens). How are these handled to avoid storing secrets in state?