Terraform Registry

Links to this page
  • Terraform Providers

    There are several #HashiCorp Terraform providers available from HashiCorp either through official support, verified, or community support. They can be downloaded from Terraform Registry# as a Terraform Plugins# if needed and stored into the local directory .terraform/plugins/.

    We could put a constraint on the Provider’s version used for the current project. Normally, in the Terraform Registry#, they will provide the configuration# to use the chosen version after pressing the “Use Provider” button. It could look like the following:

  • HashiCorp Terraform

    A usual Terraform workflow should start with initialising the project and identify the Terraform Providers# to be used for the target environment using the command terraform init (initialise phase). Then, dry-run or test blueprint for each target environment by laying out the action that will be carried out with the command terraform plan (planning phase). Finally, apply the blueprint and make necessary changes for the target environment accordingly by running terraform apply (apply phase). Both terraform plan and terraform apply change the state of Terraform. The state of the resources is recorded in the file terraform.tfstate. If there is a disparity between current environment and the blueprint such as missing plugins#, Terraform will fix it in order to adhere to the specified requirements. Otherwise, one could simply run terraform refresh to synchronise the state of Terraform and the underlying infrastructure. We can import resources that is created manually or providers that is outside Terraform Registry# (from other #Infrastructure as Code (IaC) tools).

    Terraform is an #open source automation tool used for #Infrastructure as Code (IaC) which is available in multiple platforms such as Windows, Apple and Linux. It can manage on-premise server, Cloud Computing# (AWS, Azure, Google Could Platform), #Virtual Machine (VM) (VMWare), Version Control System (VCS) and protocol (HTTP, TLS, Domain Name Server (DNS)) using Terraform Providers# available in Terraform Registry#.

#networking