Migrar desde terraform-validator

gcloud beta terraform vet es una alternativa al proyecto de código abierto terraform-validator, con algunas diferencias menores. Si va a migrar su canalización de CI/CD para usar gcloud beta terraform vet, deberá hacer los siguientes cambios.

1. Actualizar el comando y los argumentos

  • Reemplazar terraform-validator validate por gcloud beta terraform vet
  • Reemplazar --policy-path por --policy-library

Ejemplo básico:

# 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

Con la suplantación de identidad de cuentas de servicio:

# 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. (Opcional) Actualizar plantillas de restricción

Históricamente, la documentación de terraform-validator proporcionaba instrucciones sobre cómo escribir políticas de Constraint Framework. Ahora hay un formato más reciente que recomendamos para escribir nuevas políticas.v1alpha1 También puede actualizar las políticas para que usen el nuevo formato.

En el caso de las políticas procedentes de github.com/GoogleCloudPlatform/policy-library, le recomendamos que mantenga la sincronización con el repositorio remoto.