Terraform Cheatsheet

Terraform CheatsheetKapitel 09 von 12

Terraform Workspaces und Tests

Stand Terraform 1.17 · Edition 2026.11 · Release-Daten geprüft am 30. Oktober 2026

Workspaces und ihre Grenzen

Ein Workspace = eigener State bei gleicher Config und gleichem Backend. Gut für kurzlebige Varianten (Feature-Test, Review-Umgebung).

Grenze: Prod/Non-Prod-Trennung, gleiche Credentials, gleicher State-Bucket, terraform.workspace-Verzweigungen im Code. Dafür getrennte Root-Module + Backends verwenden.

terraform workspace new review-142
terraform workspace select review-142
terraform workspace list
# im Code: name = "app-${terraform.workspace}"

terraform test (1.6+)

Tests in *.tftest.hcl: run-Blöcke führen command = plan (legt nichts an, braucht ohne Mock aber Provider-Zugang) oder apply aus, Default ist apply, und prüfen assert-Bedingungen. Seit 1.7: mock_provider + Overrides, Provider-Antworten simulieren statt echte Infrastruktur anzulegen.

# tests/naming.tftest.hcl
run "prod_prefix" {
  command = plan
  variables { env = "prod" }
  assert {
    condition     = local.name_prefix == "app-prod"
    error_message = "Prefix-Schema verletzt"
  }
}