Terraform Concepts: Difference between revisions
Jump to navigation
Jump to search
No edit summary |
|||
Line 5: | Line 5: | ||
=Overview= | =Overview= | ||
Terraform is a tool for building, changing and managing infrastructure, as code. It uses a configuration language named Hashicorp Configuration Language (HCL). Terraform is platform agnostic, and achieves that by using different [[#Provider|provider]] APIs for [[#Resource|resource]] provisioning, via [[#Provider_Plug-In|plug-ins]]. A heterogenous environment can be managed with the same [[#Workflow|workflow]]. | Terraform is a tool for building, changing and managing infrastructure, as code. It uses a configuration language named [[#Hashicorp_Configuration_Language_.28HCL.29|Hashicorp Configuration Language (HCL)]]. Terraform is platform agnostic, and achieves that by using different [[#Provider|provider]] APIs for [[#Resource|resource]] provisioning, via [[#Provider_Plug-In|plug-ins]]. A heterogenous environment can be managed with the same [[#Workflow|workflow]]. | ||
=Hashicorp Configuration Language (HCL)= | =Hashicorp Configuration Language (HCL)= |
Revision as of 20:09, 13 November 2019
Internal
Overview
Terraform is a tool for building, changing and managing infrastructure, as code. It uses a configuration language named Hashicorp Configuration Language (HCL). Terraform is platform agnostic, and achieves that by using different provider APIs for resource provisioning, via plug-ins. A heterogenous environment can be managed with the same workflow.
Hashicorp Configuration Language (HCL)
HCL is human-readable. Configuration can also be JSON, but JSON is only recommended when the configuration is generated by a machine. Internally, the declarative language that drives provider API for resource provisioning.