Streamlining Multi-Component Deployments to Terraform Environments with GitHub Actions Matrices

Screenshot of GitHub Actions jobs showing the successful execution of a multi-component deployment. The image highlights various jobs in the workflow, each marked with a green check to indicate successful completion.

Deploying resources in Azure often involves deploying multiple components to numerous environments, each with its own specific configuration. Managing this complexity efficiently can be challenging. However, GitHub Actions, coupled with matrices, offers a powerful solution to streamline these multi-component deployments to multiple Terraform environments. In this blog post, we’ll explore how to use matrices in … Read more

7 Configurations I recommend you setup to deploy your Terraform into Azure at scale using GitHub Actions

Screenshot of GitHub Actions jobs output showing a configuration that creates a matrix with six combinations. The matrix includes the following combinations: [development, core], [development, logging], [development, network], [production, core], [production, logging], and [production, network]. The image highlights how the matrix configuration is used to run jobs across multiple environments and components, with each combination represented as a separate job or workflow step.

This blog post dives into the world of Terraform deployments in Microsoft Azure and explores how GitHub Actions can be harnessed to streamline the process, particularly when dealing with larger-scale deployments across various terraform resources, components and environments. We’ll walk through the essential configurations and best practices that I recommend for deploying Terraform at scale … Read more

Using Terraform Providers To Deploy Resources To Different Azure Subscriptions

Deploying Terraform in Azure, there may be a need to deploy or reference a resource in different subscription that the current Terraform deployment is configured to deploy to. In this blog post, I will delve into the process of deploying or referencing resources in different Azure subscriptions using Terraform providers. I will cover the fundamental … Read more

If, elseif or else in GitHub Actions

One of the lesser-explored yet incredibly powerful features of GitHub Actions is its support for conditional expressions. In this blog post, we’ll dive into the world of conditional expressions, specifically focusing on the ‘if,’ ‘elseif,’ and ‘else’ expressions, and explore how they can be leveraged to create more dynamic and efficient workflows. I did write … Read more

How to Resolve a Transaction Check Error in Yum

If you’re using Yum to manage packages on a Red Hat Enterprise Linux (RHEL) 7 system, you may encounter a transaction check error when trying to install a package. One common error message is similar to: In this case the error message indicates that there is a conflict between two packages: rhui-azure-rhel7-2.2-606.noarch and rhui-azure-rhel7-eus-2.2-602.noarch. Both packages contain a … Read more

AADSTS500113: No reply address is registered for the application

If you’ve encountered the AADSTS500113 error while using an Azure AD application during authentication, fear not! This blog post will guide you through a quick fix to resolve the issue and get you back on track. The error code “AADSTS500113: No reply address is registered for the application” in Azure AD (Azure Active Directory) indicates … Read more

The Ultimate Guide to a Productive Home Office Setup (2026 Edition)

Photograph of a home office setup featuring multiple monitors and Apple MacBooks. The workspace is organised with several screens arranged for multitasking, showcasing a professional and efficient environment for productivity and remote work

Recently, I shared a photo of my new ultimate home office setup for productivity on Twitter and received numerous queries about it. In this blog post, I’ll be sharing information about my setup and links to the various websites I used to create it. Desk and Chair The centre piece of my ultimate home office … Read more

Configuring Groups Optional Claims in Terraform for an Azure AD Application

Recently I was looking at automation of an Azure AD application, one of the requirements of this was to configure groups optional claims within terraform. In this blog post, I will show how I achieved this, as the current Terraform documentation is slightly tricky to understand. Further reading on this setup and more details on … Read more

Terraform “set of string required.” error fix

Quick blog post on how to fix Terraform error “set of string required.” error. If you’re working with Terraform, you may encounter an error message that says “set of string required.” This error occurs when you’re trying to pass a variable that is not in the correct format. Here’s an example of what the error … Read more

Terraform import blocks to import Azure resources into Terraform

In a recent announcement with Terraform v1.5.0, Terraform released the option to import your resources into Terraform using import blocks. This feature is a great addition to Terraform as it allows you to import existing resources into your Terraform state file, which can be useful when you have resources that were created outside of Terraform. … Read more