Skip to content
>_higan

Series · Cloud

Terraform

12 parts in this series, in reading order.

  1. Cover image for Terraform Mastery: A Practical Learning Path

    Terraform Mastery: A Practical Learning Path

    A structured self-study path for Terraform — theory, hands-on labs, and a real project, from initial setup through production-grade infrastructure.

    4 min read
    Read post
  2. Cover image for Terraform #00 — Setup & Free Practice Environment

    Terraform #00 — Setup & Free Practice Environment

    Install Terraform with tfenv, understand the Terraform vs OpenTofu split, and set up a safe, free practice environment using LocalStack.

    6 min read
    Read post
  3. Cover image for Terraform #01 — Fundamentals: HCL, Providers, Resources & Lifecycle

    Terraform #01 — Fundamentals: HCL, Providers, Resources & Lifecycle

    HCL syntax, providers and aliases, resource vs data source, resource lifecycle, and the core init → plan → apply → destroy workflow.

    7 min read
    Read post
  4. Cover image for Terraform #02 — State Management: Remote Backend, Locking & Import

    Terraform #02 — State Management: Remote Backend, Locking & Import

    A deep dive into the state file, S3 remote backend with locking, importing existing resources, and handling drift safely.

    7 min read
    Read post
  5. Cover image for Terraform #03 — Variables, Outputs & Locals

    Terraform #03 — Variables, Outputs & Locals

    Input variables, validation, sensitive values, outputs, and locals — the building blocks for flexible, reusable Terraform code.

    6 min read
    Read post
  6. Cover image for Terraform #04 — Expressions, Functions & Data Sources

    Terraform #04 — Expressions, Functions & Data Sources

    Expressions, ~150 built-in functions, data sources, and how Terraform's dependency graph works.

    7 min read
    Read post
  7. Cover image for Terraform #05 — Loops & Conditionals: count, for_each, dynamic

    Terraform #05 — Loops & Conditionals: count, for_each, dynamic

    Master count vs for_each (and the index-shift trap), for expressions, dynamic blocks, and conditional resource creation.

    7 min read
    Read post
  8. Cover image for Terraform #06 — Modules: Design, Versioning & Composition

    Terraform #06 — Modules: Design, Versioning & Composition

    Build reusable modules the right way: clean input/output interfaces, versioning, registry usage, and composition patterns.

    6 min read
    Read post
  9. Cover image for Terraform #07 — Multi-Environment & Project Structure

    Terraform #07 — Multi-Environment & Project Structure

    Managing dev/staging/prod: workspaces vs directory-per-env, partial backend config, and when to reach for Terragrunt.

    5 min read
    Read post
  10. Cover image for Terraform #08 — Testing & CI/CD

    Terraform #08 — Testing & CI/CD

    terraform test, tflint, checkov, policy-as-code, and a proper plan-on-PR / apply-on-merge pipeline with OIDC.

    6 min read
    Read post
  11. Cover image for Terraform #09 — Security, Secrets & Safe Refactoring

    Terraform #09 — Security, Secrets & Safe Refactoring

    Managing secrets the right way, least-privilege infrastructure, and refactoring running production code safely using moved/import/removed blocks.

    6 min read
    Read post
  12. Cover image for Terraform #10 — Capstone: 3-Tier Production Infrastructure

    Terraform #10 — Capstone: 3-Tier Production Infrastructure

    Everything from modules 00-09 applied to a real project: a 3-tier web infrastructure, multi-environment, reusable modules, CI/CD-ready.

    3 min read
    Read post