For upgrading from Terraform 0.11 to 0.12, the
terraform 0.12checklist command in Terraform 0.11.14 can tell you if any of your currently-selected provider versions are too old for Terraform 0.12 and suggest a version to upgrade to.
As described in the full upgrade guide, the intended upgrade sequencing to move from 0.11 to 0.12 is:
- Upgrade to 0.11.14 first, leaving everything else unchanged.
terraform plan should work and indicate no changes required, unless one of the minor changes between 0.11.7 and 0.11.14 unexpectedly affect the behavior for your configuration.
- With your working directory initialized with
terraform init on Terraform 0.11.14, run
terraform 0.12checklist and it will suggest to you some changes that are better to make prior to upgrading to Terraform 0.12, which includes some necessary provider upgrades.
- Make any provider upgrades that the checklist tool suggests and, if that includes upgrading across any provider major releases, respond to any upgrade steps required for each provider. Before moving on, ensure that
terraform plan works with those new provider versions and produces an empty plan.
- Upgrade to Terraform 0.12, keeping all of the provider version selections you made in response to
terraform init with Terraform 0.12, and then follow the rest of the upgrade guide steps.
terraform 0.12checklist tool understands which provider releases are compatible with Terraform 0.12 by querying the Terraform Registry API. Specifically, it accesses the
versions endpoint (using the
aws provider there just as an example) and looks for versions that list
5.0 as a supported protocol version, which is the protocol version introduced with and required by Terraform 0.12.