DevOps/Terraform

From Wiki
< DevOps
Revision as of 03:43, 6 September 2020 by Joseph (talk | contribs) (Start Terraform page)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

Tools like Ansible were better over ad-hoc scripts since they provided idempotency. However, since Ansible does not remember the previous state between deployments, it cannot be used in a declarative fashion. Terraform's biggest USP is that it stores the state of the infrastructure and also checks it against the real state on each run. This allows the end user to specify the desired end state of their system without going into the details of how to get there.

Terraform's configuration language, HCL2 is now Turing complete. Pulumi is a similar tool in this category that offers full programming languages like TypeScript, Python and others (like Chef did with Ruby). Time will tell if having a Turing complete configuration language is a good thing or a bad thing.