AMportfolio@v3.0.0
All case studies
DevOpsTerraform · Azure DevOps · Multi-environment08 / 10

Azure Terraform CI/CD Pipeline

Multi-stage infrastructure delivery with approvals

Overview

Designed multi-stage pipelines that provision Azure infrastructure with Terraform. Key Vault, App Service, MySQL, and Static Web Apps are deployed per environment from the same definition, with plan output published for review and manual approval gates guarding the staging and production applies.

Engineering focus

A plan is only useful if a human reads it. Publishing the plan as an artifact and gating apply behind approval is what separates automated infrastructure from unattended infrastructure.

Delivery stages

1terraform initRemote backend
2validate & fmtSyntax and style gate
3terraform planPublished as artifact
4ApprovalReviewer signs off
5terraform applyEnvironment scoped
6OutputsEndpoints and secrets

Architecture flow

📁
Infrastructure Repo
HCL under review
Pipeline Trigger
Branch per environment
📝
Plan Artifact
Diff reviewed by a human
🚦
Approval Gate
Staging and production
🚀
Apply Stage
Key Vault · App Service · MySQL
Live Environment
Static Web App front end

Key outcomes

Multi-stage pipelines designed for provisioning Azure infrastructure with Terraform
Key Vault, App Service, MySQL, and Static Web Apps deployed across environments
Environment-based deployments (Dev, Staging, Production) enabled with approvals

Stack

TerraformAzure DevOpsKey VaultApp ServiceAzure MySQLStatic Web AppsApprovals

Environment

RegionCanada Central
Resource Grouprg-tf-pipeline
StagesDev → Staging → Prod
SecretsAzure Key Vault
GateManual approval before apply