Category:Terraform: Difference between revisions

Add description of the language.
(Add page for Terraform)
 
(Add description of the language.)
 
Line 1:
{{stub}}{{language|Terraform}}
{{language
|exec=interpreted
|tags=hcl
}}'''Terraform''' is a proprietary programming system developed by Hashicorp for instantiating resources using infrastructure-as-code principles. While it is designed to create virtual infrastructure (virtual machines, storage volumes, database instances, containers, serverless functions, and so on), primarily using public cloud vendors like Amazon, there are drivers (called "providers") for many other systems and services. More importantly for purposes of this site, many of the tasks here can also be realized in it, without standing up any infrastructure at all.
=Implementation=
Terraform is implemented by the terraform command-line utility, which is available for multiple platforms.
 
=Language=
There are two syntaxes available, one using JSON, and the other using the proprietary Hashicorp Configuration Language (HCL), which is more common. The configuration language underwent a significant syntax overhaul between Terraform versions 0.11 and 0.12, which promoted expressions to first-class citizens not restricted to string interpolation and enabled more general arithmetic and collection manipulation functions. It is still missing some features that would be found in a standard general-purpose programming language, such as the ability to build up a value iteratively.
1,480

edits