Andrew Wilson's Blog

{ ... Plan - Architect - Develop - Reflect - Improve - Repeat ... }

Automating Semantic Versioning in Azure DevOps CI/CD Pipelines with GitVersion

Overview Versioning is the unsung hero of software development—often overlooked but absolutely essential. Imagine trying to manage a project without a clear way to track changes, communicate updates, or ensure compatibility. Chaos, right? That’s where versioning steps in, providing structure and …


Bicep | Existing Resource Dependencies

Background The Bicep existing keyword is a powerful capability that allows us to reference a resource that wasn’t deployed as part of the current Bicep file. One of the typical use cases that I often see is where a resource is deployed as part of a module called by the parent template, the …


Logic App | Access Key Revocation and Regeneration

Overview In previous articles I have subtly referenced risks and best practices regarding HTTP triggered workflows and their use of Access Keys for security, such as: Some Potential Risks: If a Key is leaked, it can be used by anyone who obtains it to call your Logic App Workflow. If a Key has …


Logic App | Try-Catch Pattern, Nested Scopes, And Compensating Transaction Pattern

The Try-Catch Pattern Following the idea of defensive programming or as I like to call it for Logic Apps (being low code): defensive processing, it is considered good practice to wrap your workflows in a try-catch pattern to handle the unexpected. The pattern makes use of a mixture of Run After …


Key Vault Reference | Logic and Function Apps using User-Assigned Managed Identity

Overview Prior to the Christmas break I was involved in writing some integrations that used a mixture of Logic Apps Standard and Function Apps. It was agreed as part of the architecture that user-assigned identities would be the best fit. As part of the implementation, I observed that the …


Latest post: February 3, 2026
Latest post: December 3, 2025
Latest post: September 17, 2025
Latest post: November 26, 2024