New Terraform Tutorial: Lock and Upgrade Provider Versions
Learn to manage your provider versions with this new tutorial on HashiCorp Learn.
When multiple users or automation tools manage the same Terraform configuration, they should use the same versions of the configuration’s required providers.
» Manage Provider Versions
There are two ways for you to manage provider versions in your configuration:
- Specify provider version constraints in your configuration’s
terraform
block, or - Use the dependency lock file (introduced in Terraform 0.14)
If you do not scope provider versions, Terraform will download the latest version. This may lead to unexpected infrastructure changes. By specifying carefully scoped provider versions and using the dependency lock file, you ensure that Terraform uses the correct provider version to consistently manage your configuration.
The new tutorial, Lock and Upgrade Provider Versions, will guide you through how to manage provider versioning using both of these methods. In the tutorial, you will create an S3 bucket from an initialized Terraform configuration and upgrade the AWS provider to use the latest version.

By the end of this tutorial, you will understand how to use the dependency lock file to ensure consistent Terraform runs across multiple users and automation tools.
» Learn More
Get more hands-on experience with writing Terraform configurations with this collection of tutorials on HashiCorp Learn.
Sign up for the latest HashiCorp news
More blog posts like this one

Terraform provider for Google Cloud 7.0 is now GA
Version 7.0 of the HashiCorp Terraform Google Cloud provider adds new ephemeral resources, write-only attributes, and validation logic.

How to enable developer self-service at scale with Terraform and Waypoint
Learn how to simplify Terraform self-service with HCP Waypoint’s features for building golden deployment workflows.

Terraform now supports assigning agent pools at the project level
HCP Terraform and Terraform Enterprise users can now assign default agent pools at the project level, offering a more scalable and secure approach to agent pool configuration.