diff --git a/website/docs/registry/index.html.md b/website/docs/registry/index.html.md index 889f660672f8..863063d4754d 100644 --- a/website/docs/registry/index.html.md +++ b/website/docs/registry/index.html.md @@ -8,28 +8,28 @@ description: |- # Terraform Registry -The [Terraform Registry](https://registry.terraform.io) is an interactive resource for discovering a wide selection of integrations (Providers) and configuration packages (Modules) for use with Terraform. The Registry includes solutions developed by HashiCorp, Third-party vendors, and those created by our Terraform community. The Registry aims to connect our users with solutions, and to help new users get started with Terraform more quickly, by sharing examples of how Terraform is written, and find pre-made modules for infrastructure components you require. +The [Terraform Registry](https://registry.terraform.io) is an interactive resource for discovering a wide selection of integrations (providers) and configuration packages (modules) for use with Terraform. The Registry includes solutions developed by HashiCorp, third-party vendors, and our Terraform community. Our goal with the Registry is to provide plugins to manage any infrastructure API, pre-made modules to quickly configure common infrastructure components, and examples of how to write quality Terraform code. ![screenshot: terraform registry landing page](./images/registry1.png) -The Terraform Registry is integrated [directly into Terraform](https://www.terraform.io/docs/configuration/providers.html) to make consuming Providers and modules easy. Anyone can publish both Providers and Modules on the Registry – you may use the [Public Registry](https://registry.terraform.io) for viewing and publishing public providers and modules; For private modules, you can use a [Private Registry](https://www.terraform.io/docs/registry/private.html), or [reference repositories and other sources directly](https://www.terraform.io/docs/modules/sources.html). +The Terraform Registry is integrated [directly into Terraform](/docs/configuration/provider-requirements.html) to make it easy to use providers and modules. Anyone can publish and consume providers and modules on the public [Terraform Registry](https://registry.terraform.io). (To publish private modules within your organization, you can use a [private registry](/docs/registry/private.html) or [reference repositories and other sources directly](/docs/modules/sources.html).) -Use the navigation to the left to learn more about using the registry. +Use the navigation to the left to learn more about using the Terraform Registry. ## Navigating the Registry -As the Terraform Ecosystem continues to grow, the Registry is designed to make it easy to discover and search through integrations and solutions across dozens of categories. Select a Provider or Module card to learn more, use filters to select the tier (see tiers), or use the search at the top of the Registry to find what you’re looking for. Note that search supports keyboard navigation: +As the Terraform ecosystem continues to grow, the Registry is designed to make it easy to discover integrations and solutions across dozens of categories. Select a provider or module card to learn more, filter results to a [specific tier](./providers/index.html#provider-tiers-amp-namespaces), or use the search field at the top of the Registry to find what you’re looking for. (Note that search supports keyboard navigation.) ![screenshot: terraform registry browse](./images/registry2.png) ## User Account -Anyone interested in publishing a Provider or Module can create an account and sign in to the Terraform Registry using a GitHub account. Choose Sign-in, and follow the login prompts. Once you have authorized the use of your GitHub account and are signed in, you are able to publish both Providers and Modules, directly from one of the Repositories you manage. To learn more, see [Publishing to the Registry](https://www.terraform.io/docs/registry/providers/publishing.html). +Anyone interested in publishing a provider or module can create an account and sign in to the Terraform Registry using a GitHub account. Click the "Sign-in" button, and follow the login prompts. Once you have authorized the use of your GitHub account and are signed in, you can publish both providers and modules directly from one of the repositories you manage. To learn more, see [Publishing to the Registry](/docs/registry/providers/publishing.html). ![screenshot: terraform registry sign in](./images/user-account.png) ## Getting Help -We welcome any feedback you have throughout the process and encourage you to reach out if you have any questions or issues with the Terraform Registry by sending us an [email](mailto:terraform-registry-beta@hashicorp.com). The providers and modules in The Terraform Registry are published and maintained either directly by HashiCorp, by trusted HashiCorp partners and the Terraform Community ([see tiers & namespaces](./providers/overview.html#provider-tiers-amp-namespaces)). If you run into issues or have additional contributions to make to a provider or module, you can submit a GitHub issue by selecting the "Report an issue" link on the detail view: +We welcome any feedback about using or publishing to the Registry. Please reach out if you have any questions or issues with the Terraform Registry by sending us an [email](mailto:terraform-registry-beta@hashicorp.com). The providers and modules in The Terraform Registry are published and maintained either directly by HashiCorp, by trusted HashiCorp partners, or by members of the Terraform community ([see tiers & namespaces](./providers/index.html#provider-tiers-amp-namespaces)). If you run into issues or have additional contributions to make to a provider or module, you can submit a GitHub issue by selecting the "Report an issue" link on the detail view: ![Provider report issue link](./images/registry-issue.png) diff --git a/website/docs/registry/providers/overview.html.md b/website/docs/registry/providers/index.html.md similarity index 50% rename from website/docs/registry/providers/overview.html.md rename to website/docs/registry/providers/index.html.md index 39ea1218f153..411f44f231b5 100644 --- a/website/docs/registry/providers/overview.html.md +++ b/website/docs/registry/providers/index.html.md @@ -7,11 +7,23 @@ description: |- # Overview - The Registry offers both a place for users to find Providers, and also acts as the Public origin source for Terraform, meaning that all published providers are directly available from within the Terraform CLI. Providers are how Terraform integrates with any upstream API, whether another HashiCorp technology, or the many hundreds of third-party services that Terraform integrates with today. Creating a Provider is designed to be easy and intuitive, and the Registry is here to help you share it with the rest of the community. +Providers are how Terraform integrates with any upstream API. + +The Terraform Registry is the main source for publicly available Terraform providers. It offers a browsable and searchable interface for finding providers, and makes it possible for Terraform CLI to automatically install any of the providers it hosts. + +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. + +## 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; Terraform can then automatically install that provider when initializing a working directory, and your configuration can take advantage of any resources implemented by that provider. + +For more information, see: + +- [Configuration Language: Provider Requirements](/docs/configuration/provider-requirements.html) ## Provider Tiers & Namespaces -Terraform Providers are published and maintained by a variety of sources, including HashiCorp, HashiCorp Technology Partners, and the Terraform Community. Tiers and Badges are used in the Registry to denote the source of the Provider. Additionally, namespaces are used to help users identify the organization or publisher responsible for the integration, as shown in the table below. +Terraform providers are published and maintained by a variety of sources, including HashiCorp, HashiCorp Technology Partners, and the Terraform community. The Registry uses tiers and badges to denote the source of a provider. Additionally, namespaces are used to help users identify the organization or publisher responsible for the integration, as shown in the table below.
- | Official Providers are owned and maintained by HashiCorp | -HashiCorp |
+Official providers are owned and maintained by HashiCorp | +hashicorp |
- | Verified Providers are owned and maintained by third-party technology partners. Providers in this tier indicate 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 |
+Verified providers are owned and maintained by third-party technology partners. Providers in this tier indicate 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 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, e.g. DeviaVir/gsuite |
+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 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 was low. | -HashiCorp or Third-Party |
+hashicorp or third-party |