Terragrunt - DRY Providers
Instead of copying provider.tf files everywhere, we'll use the generate block. Learn to define provider versions and credentials in a single root file, injecting them into every module automatically to ensure consistency across your fleet.
Terragrunt - DRY Backends
Defining S3 buckets in every folder is error-prone. We’ll use the remote_state block to define backend logic once at the root, allowing every child module to automatically inherit and configure its own state path dynamically.
Terragrunt - The terragrunt.hcl File
This file is the heart of your configuration, replacing standard .tf definitions. We’ll examine how this single entry point defines where your Terraform code lives, what inputs it needs, and how it inherits logic from parent directories.
Terragrunt - The Wrapper Concept
Terragrunt isn't a replacement; it’s a power-up. Discover how it wraps the standard Terraform binary to dynamically generate configurations, inject arguments, and handle backend logic before handing control over to the core tool you already know.
Terragrunt - Terragrunt vs. Terraform Workspaces
Workspaces seem easy for environments, but they share the same backend and plugins, making multi-account isolation difficult. We’ll analyze why directory-based separation is safer and more robust for enterprise scale than CLI workspaces.
Terragrunt - Code Duplication in Terraform
Copy-pasting provider blocks and backend configs across hundreds of folders is a maintenance nightmare. Learn how native Terraform forces this redundancy and why solving it is the first step toward scalable Infrastructure as Code.
Terragrunt - The "Monolith" Problem
Managing massive state files is risky; one error can break your entire infrastructure. We’ll explore why breaking infrastructure into smaller, isolated units reduces blast radius and speeds up deployments compared to giant "all-in-one" states.
Gitlab CI/CD - Kubernetes Integration
Embrace GitOps. Connect your cluster via the GitLab Agent to manage deployments securely. Synchronize your manifest files directly with the cluster state for seamless, pull-based updates.
Gitlab CI/CD - Terraform / OpenTofu Integration
Infrastructure as Code meets CI/CD. Manage your Terraform state within GitLab. We’ll generate plans in Merge Requests and apply infrastructure updates automatically when code is merged.
Gitlab CI/CD - Compliance Pipelines
Enforce governance. Define mandatory scans or steps that run in every project's pipeline regardless of developer configuration. Ensure regulatory requirements are met without relying on individual teams.