What it is and the problem it solves
Terraform is an infrastructure-as-code tool that solves the problem of inconsistent, undocumented, and unrepeatable infrastructure deployments. It replaces CLI scripts and console clicks with machine-readable, version-controlled definitions.
How it works
Terraform uses declarative configuration files—written in HashiCorp Configuration Language (HCL) or JSON—to define infrastructure. It applies those definitions through plugins called ‘providers’ that interface with cloud platforms, on-prem systems, SaaS, PaaS, and network appliances. It does not execute imperative commands. It reconciles desired state against observed state.
What works
Its plugin-oriented architecture supports dozens of providers. Its declarative model enables predictable plan/apply workflows. Its module system—launched in 2017—allows reuse and composition. Its state file tracks real-world resources, enabling drift detection.
What does not
It does not enforce security policy by default. It does not replace CI/CD pipelines or runtime observability tools. It does not guarantee idempotency across all providers. It does not remain free for commercial users offering competitive services after August 2023.
What it changes
It shifts infrastructure management from manual, ad-hoc operations to versioned, collaborative, testable code. It moves vendor lock-in from APIs to provider plugins—and makes that lock-in explicit, portable, and auditable. It forces teams to model infrastructure as data before execution.
Is it worth your time
Yes—if you manage multi-cloud or hybrid infrastructure at scale and need repeatable, auditable provisioning. No—if your infrastructure is static, single-provider, or you rely on open-source tooling that cannot operate under BUSL’s commercial-use restrictions.