
Why should you consider adding Terragrunt to your IaC stack?
Explore three Terragrunt installation methods for Linux and macOS: system package managers, downloading the binary from GitHub, and the Homebrew approach, with notes on version management challenges.
Learn how to keep your Terraform and Terragrunt code dry by using modules to reuse components, centralizing remote state configuration, extracting common environment settings, and standardizing command line flags.
Keep your Terraform CLI configuration DRY with Terragrunt by centralizing extra arguments, environment variables, required and optional var files, and organizing the setup for clarity.
Terragrunt hooks enable before, after, and error actions triggered around plan, apply, and destroy; define unique hook names and attach custom scripts to run, log, or notify during Terraform operations.
Apply the fmt command to automatically format Terragrunt code recursively from the root directory, align lines, and keep changes in place, enabling clean code and CI/CD integration.
Discover how to run all Terragrunt modules in a single batch to manage entire environments, speed up plan and apply, and observe dependency flows across database, application, and load balancer.
Keep your Terragrunt architecture dry by extracting common module configuration into a directory, then include it from dev and prod environments, focusing on Terraform source and inputs to reduce duplication.
Demonstrate before, after, and error hooks in Terragrunt, applied to init, plan, and apply, including simple echo notifications and error handling options.
Understand how AWS costs can accumulate, learn about the free tier and always free resources, and follow best practices to shut down instances and remove unused resources.
Learn to keep dependencies dry by using Terraform's dependency blocks to pass module outputs (security group IDs, bucket names) between modules, making configs dynamic and reducing manual input.
Welcome to my course on Terragrunt!
We are going to learn how to maintain our Terraform code in better way. We will focus on how to work on Terragrunt modules, extract common parts for provider, remote state and modules itself. We will start with the basics, understand blocks that we have inside the Terragrunt. We will use some built-in functions. After that we are going to focus on why and how move to the next level, so called DRY approach (Don't repeat yourself approach).
We will do live examples for:
- Plain Terraform (aka dummy modules and environments just to look around)
- Hashicorp Vault setup
- AWS setup
Streamline Your Terraform Workflows with Terragrunt!
Learn how to eliminate repetitive code, manage complex infrastructures, and scale your Terraform projects effortlessly. This course will teach you to leverage Terragrunt's powerful features to keep your Terraform configurations DRY (Don't Repeat Yourself) and maintainable across multiple environments. Perfect for DevOps and Cloud Engineers looking to optimize their infrastructure as code practices.
I truly believe that with examples in the course and knowledge I'm going to pass over to you - you will be able to apply it to any environments you are currently maintain. Example is this course are related to AWS and Vault, but approaches presented here are relative to any cloud or provider that you are using.
Disclamer:
This course is not going to learn you how to work with Terraform basics. It learns you how to leverage your Terraform skills with Terragrunt wrapper and Gruntwork team mindset.
I hope you will enjoy it and level up your infrastructure as a code!