Terraform, Pulumi & co. Infrastructure as versioned code — reproducible, reviewable, reversible.
Category · DevOps & Infra
Infrastructure as code.
Infrastructure as Code describes servers, networks, databases and permissions as versioned code — with tools like Terraform or Pulumi. Instead of clicking around in a cloud console, you define the target state in files.
Those files live in the repository alongside the application code: reviewable in a pull request, reproducible with a command, revertible through the history.
Why we don't click our infrastructure.
Manually built environments drift apart and nobody quite remembers why something is configured the way it is. As IaC, the infrastructure is documented, because the code is the documentation.
Standing up an identical staging and production environment becomes a single command. That's what we need when we roll out platforms and operate them traceably over years.
The price you pay.
IaC has a noticeable learning curve, and the state — the file that mirrors the actual situation — has to be managed with discipline. Bypass it manually in the console and you create exactly the drift you set out to avoid.
For a quick throwaway experiment the effort is too high and slows you down. For anything that lives longer than a few weeks and goes to production, it clearly pays off.

