Centralizing Remote State with Terragrunt in GCP
Description
As a Terraform project grows, the resource configurations become harder to update and manage. At a certain point, it's beneficial for the team to begin using additional tooling to assist with the management.
Terragrunt is an open-source tool that acts as a thin wrapper around Terraform, enabling configurations to be more in line with DRY. 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 Google Cloud Platform environments while keeping the remote state configuration DRY.
Learning Objectives
Upon completion of this lab, you will be able to:
- Learn how to deploy Google Cloud Platform resources with Terragrunt
- Configure Terraform remote state in a centralized location within a project directory
Intended Audience
- Individuals and teams looking for ways to scale their Terraform codebase with Terragrunt
- Individuals and teams seeking an introduction to using Terragrunt with Google Cloud Platform
Prerequisites
Familiarity with the following will be beneficial but is not required:
- Basic concepts of Google Cloud Platform
- Basic concepts of Terraform
The following content can be used to fulfill the prerequisite:
- Deploying Google Cloud Platform Infrastructure with Terraform
- Working with Terraform Remote State in GCP
Updates
April 28th, 2023 - Updated theia to include autosave