從 terraform-validator 遷移

gcloud beta terraform vet 是開放原始碼 terraform-validator 專案的替代方案,只有些微差異。如要遷移 CI/CD 管道以使用 gcloud beta terraform vet,請進行下列變更。

1. 更新指令和引數

  • gcloud beta terraform vet 取代 terraform-validator validate
  • --policy-library 取代 --policy-path

基本範例:

# Old
terraform-validator validate ./tfplan.json --policy-path=/path/to/policy-library

# New
gcloud beta terraform vet ./tfplan.json --policy-library=/path/to/policy-library

使用服務帳戶模擬

# Old
GOOGLE_IMPERSONATE_SERVICE_ACCOUNT=account@project.iam.gserviceaccount.com
terraform-validator validate ./tfplan.json --policy-path=/path/to/policy-library

# New
gcloud beta terraform vet ./tfplan.json --policy-library=/path/to/policy-library \
  --impersonate-service-account=account@project.iam.gserviceaccount.com

2. (選用) 升級限制範本

terraform-validator 文件過去提供如何編寫 v1alpha1 限制條件架構政策的說明,但我們建議採用新格式編寫新政策。 您也可以將現有政策升級為新格式

如果政策來自 github.com/GoogleCloudPlatform/policy-library,建議您與遠端存放區保持同步。