GCP Terraform Patterns#
GCP’s Terraform provider (google and google-beta) has patterns distinct from both AWS and Azure. The biggest differences: APIs must be explicitly enabled per project, IAM uses a binding model (not inline policies), and GKE requires secondary IP ranges for VPC-native networking. GCP resources also tend to have longer creation times with more eventual consistency.
Projects and API Enablement#
Before creating any resource in GCP, the corresponding API must be enabled in the project. This is the most common source of first-time failures.