A 5-part series on transitioning from manual Azure portal work to automated, repeatable infrastructure with Terraform.

Series Info Details
Total Parts 5
Difficulty Beginner to Advanced
Prerequisites Basic Azure knowledge, command line familiarity
Estimated Time 8-10 hours total

Series Overview

If you’ve been managing Azure resources through the portal—clicking, configuring, and hoping you remember what you did last time—this series is for you.

ClickOps to Terraform takes you on a complete journey from manual portal work to fully automated, version-controlled infrastructure. You’ll learn not just the “how,” but the “why” behind each decision, building a solid foundation for enterprise-grade Infrastructure as Code practices.

By the end of this series, you’ll:


📅 Release Schedule: Part 1 is available now. New parts will be released weekly—check back soon!

Series Parts

Part 1: Terraform with Azure CLIAvailable Now

Foundation: Running Terraform Locally

Start your IaC journey by running Terraform on your local machine. No pipelines, no complexity—just you, your terminal, and Azure. Learn the fundamentals of HCL syntax, authentication, and the Terraform workflow (init, plan, apply).

Topics Covered:

Estimated Time: 1 hour


Part 2: Setting Up Azure DevOps & Terraform 🔜 Coming Soon

Automation: Moving to the Cloud

Graduate from local development to team-ready automation. Learn how to set up Azure DevOps pipelines, configure service principals, and implement remote state storage. This is where your infrastructure becomes truly scalable and collaborative.

Topics Covered:

Estimated Time: 2-3 hours


Part 3: Getting Comfortable with Terraform 🔜 Coming Soon

Mastery: Building Confidence

Bridge the gap between “I got it working” and “I’m comfortable with this.” This part focuses on gaining fluency with Terraform—understanding variables, outputs, remote state patterns, and building the confidence to adopt Terraform more broadly.

Topics Covered:

Estimated Time: 2-3 hours


Part 4: Importing Existing Resources 🔜 Coming Soon

Migration: Bringing in What You’ve Already Built

Already have Azure resources created manually? Learn how to bring them under Terraform management without destroying and recreating everything. Master terraform import and the newer aztfexport tool.

Topics Covered:

Estimated Time: 1-2 hours


Part 5: Adopting Terraform as an Organization 🔜 Coming Soon

Scale: Moving Your Team Away from ClickOps

You’ve learned Terraform—now how do you get your team on board? This final part covers strategies for organizational adoption, establishing standards, and creating a culture where Infrastructure as Code becomes the default.

Topics Covered:

Estimated Time: 1-2 hours


Learning Path

┌─────────────────────────────────────────────────────────────┐
│                                                             │
│  Part 1: Local Development ✅ AVAILABLE                     │
│  ├─ Install Terraform                                       │
│  ├─ Learn HCL syntax                                        │
│  ├─ Deploy your first resource                              │
│  └─ Master the Terraform workflow                           │
│                                                             │
└─────────────────────────────────────────────────────────────┘
                            ↓
┌─────────────────────────────────────────────────────────────┐
│                                                             │
│  Part 2: Azure DevOps Automation 🔜 COMING SOON            │
│  ├─ Create service principals                               │
│  ├─ Configure remote state                                  │
│  ├─ Build basic CI/CD pipelines                             │
│  └─ Automate deployments                                    │
│                                                             │
└─────────────────────────────────────────────────────────────┘
                            ↓
┌─────────────────────────────────────────────────────────────┐
│                                                             │
│  Part 3: Getting Comfortable 🔜 COMING SOON                │
│  ├─ Variables, outputs, locals                              │
│  ├─ Remote state patterns                                   │
│  ├─ Debugging and troubleshooting                           │
│  └─ Building confidence                                     │
│                                                             │
└─────────────────────────────────────────────────────────────┘
                            ↓
┌─────────────────────────────────────────────────────────────┐
│                                                             │
│  Part 4: Importing Existing Resources 🔜 COMING SOON       │
│  ├─ terraform import & aztfexport                           │
│  ├─ Handle state management                                 │
│  ├─ Migration strategies                                    │
│  └─ Avoid common pitfalls                                   │
│                                                             │
└─────────────────────────────────────────────────────────────┘
                            ↓
┌─────────────────────────────────────────────────────────────┐
│                                                             │
│  Part 5: Organizational Adoption 🔜 COMING SOON            │
│  ├─ Team standards and conventions                          │
│  ├─ Module development                                      │
│  ├─ Gradual adoption strategies                             │
│  └─ Building a Terraform-first culture                      │
│                                                             │
└─────────────────────────────────────────────────────────────┘

Prerequisites

Before starting this series, you should have:


Additional Resources


← Back to Engineering Handbook