terraform-patterns

Standardize Terraform and Terragrunt configurations with naming, module sourcing, and version pinning conventions.

3|1|Updated Nov 10, 2025
One-click install
npx skills add https://github.com/metraton/gaia --skill terraform-patterns-metraton
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: terraform-patterns
Source: https://github.com/metraton/gaia/tree/main/skills/terraform-patterns
Command: npx skills add https://github.com/metraton/gaia --skill terraform-patterns-metraton

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve?

Project teams adopting Terraform and Terragrunt often reinvent conventions for module organization, naming, and sourcing. This Skill codifies project-context patterns to reduce drift and speed up onboarding.

Core Features & Use Cases

  • Directory-structure guidance for terraform modules and terragrunt configurations.
  • Module sourcing strategies: local modules vs registry modules with pinning.
  • Naming conventions for resources, modules, and environments.
  • Reference to common patterns and how to apply them across projects.

Quick Start

Apply these Terraform patterns to your projects to enforce naming, module sourcing, and Terragrunt usage for consistent infrastructure code.

Frequently Asked Questions about terraform-patterns

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I standardize Terraform naming conventions across multiple environments?

Standardize Terraform naming conventions by codifying project-context rules for resources, modules, and environments to reduce configuration drift. This approach enforces consistent labeling across all infrastructure-as-code deployments.

What is the best way to structure Terraform modules and Terragrunt configurations?

The best way to structure Terraform modules and Terragrunt configurations is applying directory-structure guidance that codifies project-context patterns. This standardizes backend configuration and module organization to minimize onboarding friction.

How do I pin exact versions for Terraform registry modules to prevent drift?

Pin exact versions for Terraform registry modules by enforcing deterministic dependencies and exact version pinning strategies. This environment-aware pattern minimizes configuration drift and unexpected infrastructure-as-code errors.

When should I use local Terraform modules vs registry modules?

Choose between local Terraform modules vs registry modules using codified module sourcing strategies that enforce deterministic dependencies. Local modules offer custom control while registry modules provide standardized, version-pinned external functionality.

Can I apply consistent Terraform patterns to existing infrastructure-as-code projects?

Yes, you can apply consistent Terraform patterns to existing infrastructure-as-code projects by enforcing project-context conventions for modules, naming, and sourcing. This standardizes backend configuration and environment-aware patterns across deployments.

Why do my Terragrunt configurations have drift between different environments?

Terragrunt configurations drift between environments due to inconsistent naming, module sourcing, and backend configuration. Codifying environment-aware patterns with exact version pinning and deterministic dependencies minimizes these infrastructure errors.