Terraform Module Lifecycle: From First Variable to a Release Teams Can Trust
Terraform module lifecycle for platform teams: design, test, review, release, consume and deprecate modules on Azure so every version is one teams can trust.
Terraform module lifecycle for platform teams: design, test, review, release, consume and deprecate modules on Azure so every version is one teams can trust.
AI tools generate code fast. Your pipeline needs to catch what they get wrong. Here’s how to build a scanning layer across IaC, containers, and application code.
Learn how to build composite GitHub Actions that standardise deployments across teams. A practical guide for platform engineers, with a real Azure OIDC login action walkthrough.
Learn how to avoid common mistakes within your Terraform code and modules
Learn how to use Terraform’s native test framework to validate Azure modules, prevent breaking changes, and integrate tests into Azure DevOps pipelines.
Explore how to build a self-service Azure Service Catalog using IaC, DevOps pipelines, and governance to empower teams without bottlenecks.
In the previous posts in this series, I’ve highlighted the benefits of using Infrastructure as Code (IaC), and more specifically integrating Terraform with DevOps CI/CD pipelines and optimising pipelines with pull requests and automatic tagging. As we’ve seen, using IaC is a reliable way to deploy and manage resources in Azure, giving us consistency, repeatability, … Read more
With OIDC, Stage Gates & Reusable Templates When you’re deploying infrastructure at scale, Azure DevOps Terraform pipelines need to be more than just a “plan and apply” script. They need to be safe, reusable, secure, and structured enough to support multiple teams and multiple environments. In this post, I’ll walk through a production-grade Azure DevOps … Read more
The Problem I found myself committing a cardinal sin in Terraform — repeating configuration across multiple projects. When deploying Azure resources, we often need region- or environment-specific values. For example, virtual networks may need different routes or DNS servers depending on the location. I was managing these using lookup tables in local variables, like this: … Read more
Infrastructure as Code (IaC) is one of those topics that sounds straightforward in theory but quickly becomes complicated in practice. The perils of too much choice certainly hit home when we talk about IaC and Azure. Walk into any organisation and you’ll find multiple teams, each with their own views on the “right” IaC choice. … Read more