How Terraform Finds and Fetches Providers
Learn about the types of Terraform providers and how they can be added to the code block.
There has been a significant change in how Terraform finds and fetches providers with the introduction of version 0.13. In this lesson, we explore how Terraform interacted with providers in prior versions and how that functionality has changed in the newer version.
Categories of Terraform providers
Prior to version 0.13, Terraform providers fell into two categories: HashiCorp distributed providers and independent third-party providers.
HashiCorp distributed providers were hosted by HashiCorp and available for download automatically during Terraform initialization.
Third-party providers could be placed in a local plugins directory that was located at %APPDATA%\terraform.d\plugins
for Windows or ∼/.terraform.d/plugins
for other operating systems.
Types of Terraform providers
With the introduction of version 0.13, providers can be automatically downloaded from a public or private repository. The official public repository for Terraform is located at registry.terraform.io, which includes three types of providers:
- Official: Official providers are owned and maintained by HashiCorp.
- Verified: Verified providers are maintained by other vendors but have gone through the partner provider process.
- Community: Community providers are published and maintained by individuals and aren’t officially supported.
Get hands-on with 1400+ tech skills courses.