liveBook · Manning

Versioning

As explained in Terraform in Depth: Infrastructure as Code with Terraform and OpenTofu

Version control is the practice of tracking and managing successive changes to files and code.

Versioning tracks successive changes to infrastructure code. Git-based source control also supports collaboration, review, automated workflows, and audit trails. section 1.1.1 section 7.1.1

For reusable Terraform modules, versioning and registries help make modules easier to use. GitOps adds a shared repository as the source of truth for infrastructure configuration. section 8.1 section 8.3

Common uses include:

  • Create branches to test infrastructure changes; use pull requests to request review and require tests to pass. section 1.1.1
  • In GitOps, let a deployment system pull configuration from a shared repository and pass it to Terraform. section 8.3

How Terraform in Depth: Infrastructure as Code with Terraform and OpenTofu covers it

How deep it goes
Connects Git practices to module registries and GitOps, but does not detail version-selection commands.
Examples
Uses branches and pull requests for infrastructure changes, and shared repositories as GitOps sources for deployed configuration.
What you can do after
Apply it via Git branches, pull requests, and shared repositories to review changes and maintain infrastructure audit trails.
How it connects
Links versioning with Git, source control management, infrastructure as code, Terraform modules, registries, CI/CD, and GitOps.

Also explained in

Compare how 25 books explain versioning →

Related concepts

This explainer was generated by Manning's knowledge graph from the text of Terraform in Depth: Infrastructure as Code with Terraform and OpenTofu. The section links point to the parts of the book it draws on.