Types of Terraform providers

Providers are how Terraform integrates with any upstream API.

The Terraform Registry is the main source for publicly available Terraform providers as it offers a browsable and searchable interface for finding providers. Additionally, it enables Terraform CLI to automatically install any of the providers it hosts.

The Registry is directly integrated with Terraform. To use any provider from the Registry, all you need to do is require it within your Terraform configuration.

Terraform providers are published and maintained by a variety of sources including HashiCorp, HashiCorp Technology Partners, and the Terraform community.

Using Providers From the Registry

The Registry is directly integrated with Terraform. To use any provider from the Registry, all you need to do is require it within your Terraform configuration. The provider is then automatically installed while initializing a working directory.

The Registry uses tiers and badges to denote the source of a provider. namespaces also help users to identify the organization or publisher responsible for the integration, as shown in the table below.

Tier Description Namespace
Official Official providers are owned and maintained by HashiCorp hashicorp
Verified Verified providers are owned and maintained by third-party technology partners. Providers in this tier indicate that HashiCorp has verified the authenticity of the Provider’s publisher, and that the partner is a member of the HashiCorp Technology Partner Program. Third-party organization, e.g., mongodb/mongodbatlas
Community Community providers are published to the Terraform Registry by individual maintainers, groups of maintainers, or other members of the Terraform community. Maintainer’s individual or organization account, e.g., DeviaVir/gsuite
Archived Archived Providers are Official or Verified Providers that are no longer maintained by HashiCorp or the community. This may occur if an API is deprecated or interest is low. hashicorp or third-party

If you want Terraform to support a new infrastructure service, you can create your own provider using Terraform’s Go SDK. Once you’ve developed a provider, you can use the Registry to share it with the rest of the community.

Free Resources

Copyright ©2024 Educative, Inc. All rights reserved