Keeping Terraform Remote State DRY with Terragrunt
As Terraform configurations grow to be large and complex, the code becomes harder to manage and make changes. Terragrunt is an open-source tool that acts as a thin wrapper around Terraform, enabling configurations to be "DRYer". DRY is a popular software development practice that stands for "Don't Repeat Yourself," which means don't re-use the same software pattern, avoiding redundancy. Terragrunt adds a feature that allows Terraform remote state configurations to be defined once in code and re-used throughout multiple Terraform projects.
In this lab, you will use Terragrunt to deploy a Terraform configuration in separate environments while keeping the remote state configuration DRY.
Upon completion of this lab, you will be able to:
- Understand how to deploy Terraform resources with Terragrunt
- Learn how to keep the remote state configuration DRY using Terragrunt
This lab is intended for:
- Individuals familiar with using Terraform and how to deploy resources
- Individuals interested in learning how to use Terragrunt to increase Terraform's effectiveness
- Enterprises looking to scale their Terraform codebase
You should be familiar with:
- Cloud Services
- Basic understanding of Terraform modules and variables
The following course and lab can be used to fulfill the prerequisites:
- Introduction to DevOps
- Creating Reusable Infrastructure with Terraform Modules
- Using Terraform Remote State
January 8th, 2024 - Lab updated to utilize CodeTour IDE
Luke is a Site Reliability Engineer at Microsoft. His background is infrastructure development using Terraform and in 2021 he was awarded the HashiCorp Ambassador award. He is an Azure DevOps Engineer Expert, Azure Administrator Associate, and HashiCorp Certified - Terraform Associate.