About IaC Foundations
The IaC Foundations component is focused on:
- Teaching you the considerations to think about when coming up with your foundational Terraform/OpenTofu and Terragrunt patterns
- Giving you a fully configured set of git repositories with an initial folder structure
- Strategy. We recommend core patterns your Terragrunt and Terraform/OpenTofu git repo needs to incorporate to scale effectively.
- IaC Modules. No IaC modules are needed for this component.
- Tooling. We recommend Terragrunt to effectively use Terraform/OpenTofu at scale.
- Setup. We grant you access to a sophisticated git repo template that includes customization options and generates your repo code.
- Updates. We publish ongoing updates to IaC foundational patterns and will write patches if applicable to adopt those changes.
IaC foundations considerations
When creating your initial Terraform/OpenTofu and Terragrunt infrastructure, there are a number of patterns you need to consider how to solve, including:
- How to create the backend (e.g. S3 bucket) for storing Terraform state
- How to structure your folder hierarchy
- How to handle tagging and labels
- Whether to use branches per environment
- How to handle global variables
- How to handle module default values
This component includes either pre-baked implementations that address these considerations, or written guidance on how to incorporate them yourself.