PROBLEM
Given the following required_providers
block…
terraform { required_providers { google = "~> 3.8" } }
… it will allow the following Google provider version: >= 3.8, < 4.0.
As of today (May 10), the latest Google provider is 3.20.0. A quick terraform init
confirms that.
Initializing provider plugins... - Checking for available provider plugins... - Downloading plugin for provider "google" (hashicorp/google) 3.20.0...
However, sometimes, there’s a need to skip a buggy version. For example, 3.20.0 breaks google_compute_firewall.
SOLUTION
To achieve that, we can do the following…
terraform { required_providers { google = "~> 3.8, != 3.20.0" } }
To confirm this works, after deleting .terraform/ dir, terraform init
now shows the following result…
Initializing provider plugins... - Checking for available provider plugins... - Downloading plugin for provider "google" (hashicorp/google) 3.19.0...