Introduction
Please follow the upgrade guide for each Terraform version you plan to upgrade to. For a list of the feature improvements/bug fixes that come with each terraform version, please see the CHANGELOG here.
You can download binary releases here.
Scenario
You wish to upgrade the version of Terraform you are using, across one or more major versions.
Recommendation
When upgrading between major releases, executing a terraform plan resulting in no proposed changes is crucial. Otherwise, pending changes can add additional unknowns to the upgrade process.
Please note that completing the upgrade will require running a successful terraform apply for your target version.
If we were to break the terraform versions into sections, we have:
- 0.1 - 0.11: Terraform 0.11 was EOL'ed May 1st 2021, so it's not supported anymore by HashiCorp.
- 0.12 - 0.13
- 0.14 - 1.0
- 1.0 to currently 1.2.x
With that in mind, here's the recommended upgrade path to the 1.x stable series per our documentation:
If you are currently using Terraform v0.13 then we strongly recommend upgrading one major version at a time until you reach Terraform v0.14, following the upgrade guides of each of those versions, because those earlier versions include mechanisms to automatically detect necessary changes to your configuration, and in some cases also automatically edit your configuration to include those changes. One you reach Terraform v0.14 you can then skip directly from there to Terraform v1.0.
IMPORTANT NOTES
- Terraform CLI v0.15.4 and newer has resolved the algorithm of the resource dependencies graph build and doesn't cause unexpected resource recreation. However, it is highly recommended to consider and review the notes from the Terraform v0.15 upgrade guide in full.
- When upgrading from 1.0.11 to the 1.1.x series, please go straight from 1.0.11 to at least 1.1.2 because there was a bad state bug in the 1.1.0 and 1.1.1 releases. You can find more information about this here.