My Digital Garden

Terraform

Terraform

Terraform is a toolset to configure any cloud service through an Infrastructure as code approach

Configuration is defined declaratively in text files using a Terraform-specific syntax and referencing provider modules that are aligned to specific cloud providers.

Application of the configuration plan can be through command-line tools or the cloud-based service terrafrom.io//www.terraform.io/

The application parses the configuration plan and seeks to conform the deployed infrastructure to match the plan: creating. modifying and/or deleting assets as required.

After application of a plan Terraform stores a representation of the remote cloud service state. On subsequent runs the (possibly modified) plan is compared with the stored state to compute corrective actions.

If uncontrolled changes are made to the cloud service outside the Terraform cycle future applications of the plan may fail, requiring further intervention to synchronise stored state and actual resources.

See also