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,建議您與遠端存放區保持同步。