-
Notifications
You must be signed in to change notification settings - Fork 0
Feature/infra #3
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from all commits
6b7aa00
0b342c5
4d006bc
8e03665
28e7348
5ac35f1
035f8c7
323c5ce
603f39b
248ca7c
edacb33
06f0d9c
a3d4351
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,6 +1,6 @@ | ||
| # infra | ||
|
|
||
| Terraform configuration for provisioning Azure infrastructure per client deployment. | ||
| OpenTofu configuration for provisioning Azure infrastructure per client deployment. | ||
|
|
||
| Each client gets an isolated resource group containing a VM, networking, managed identity, | ||
| and a blob container in the shared backup storage account. | ||
|
|
@@ -14,7 +14,7 @@ same outputs using provider-specific resources. | |
|
|
||
| ## Prerequisites | ||
|
|
||
| - Terraform >= 1.9 installed | ||
| - OpenTofu >= 1.9 installed (`brew install opentofu`) | ||
| - Azure CLI authenticated: `az login` | ||
| - `ARM_SUBSCRIPTION_ID` environment variable set | ||
| - Shared backup storage account pre-created (once, manually): | ||
|
|
@@ -36,18 +36,18 @@ cd infra/azure | |
| # 1. Edit clients/<client>.tfvars with correct values (copy from edmonton.tfvars) | ||
| # 2. Provision | ||
| export ARM_SUBSCRIPTION_ID="<your-subscription-id>" | ||
| terraform init | ||
| terraform plan -var-file=clients/<client>.tfvars | ||
| terraform apply -var-file=clients/<client>.tfvars | ||
| tofu init | ||
| tofu plan -var-file=clients/<client>.tfvars | ||
| tofu apply -var-file=clients/<client>.tfvars | ||
|
|
||
| # 3. Note outputs for use in the RUNBOOK | ||
| terraform output public_ip_address # → set DNS A record | ||
| terraform output backup_container_name # → AZURE_CONTAINER in breedbase-client.env | ||
| tofu output public_ip_address # → set DNS A record | ||
| tofu output backup_container_name # → AZURE_CONTAINER in breedbase-client.env | ||
|
Comment on lines
+39
to
+45
|
||
| ``` | ||
|
|
||
| ## Contents | ||
|
|
||
| - `providers.tf` — Terraform and azurerm provider version constraints | ||
| - `providers.tf` — OpenTofu and azurerm provider version constraints | ||
| - `variables.tf` — input contract | ||
| - `outputs.tf` — output contract | ||
| - `main.tf` — composes modules | ||
|
|
||
| Original file line number | Diff line number | Diff line change | ||||
|---|---|---|---|---|---|---|
| @@ -1,5 +1,5 @@ | ||||||
| # infra/azure/providers.tf | ||||||
| terraform { | ||||||
| tofu { | ||||||
|
||||||
| tofu { | |
| terraform { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Inconsistency between the README and implementation plan. The README.md describes this as "OpenTofu configuration" but the implementation plan (docs/plans/2026-02-22-infra.md) consistently refers to "Terraform". The actual providers.tf file uses 'tofu' (which is incorrect syntax). Clarify whether this infrastructure uses OpenTofu or Terraform, and ensure consistency across all documentation.