Andrew Wilson's Blog

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

Automating web.config Environment Transforms in Azure DevOps Pipelines for App Services

Background Modernising legacy applications is always a journey, and recently I tackled moving an existing WCF web service into Azure App Service. If you’ve worked with WCF, you’ll know the web.config file is the nerve centre, handling everything from parameters to connection strings. But here’s the catch, this service needs to run in multiple environments (Development, Test, and Production) each with its own unique settings. That means multiple config files:

How to Set Up Manual Approval for Azure App Service Slot Swaps in Azure DevOps Pipelines

Overview Deploying updates to production environments demands both speed and control. Azure App Service deployment slots, combined with Azure DevOps pipelines, offer a powerful way to manage releases, enabling teams to validate changes in a live-like environment before they go public. However, ensuring that only reviewed and approved changes reach your users is critical for maintaining reliability and compliance. Azure App Service Slots unlock powerful advantages: Site Review. Preview and test your site before it goes live, ensuring everything works as expected.

Agent Loop | Azure Logic Apps Just Got Smarter

Microsoft Announcement Microsoft has just introduced something quite revolutionary into the world of integration: Agent Loop, a new capability in Azure Logic Apps that lets you build AI-powered agents directly into your workflows. On the surface, it might seem like another incremental feature. But dig a little deeper, and the implications are huge! Let’s break it down. What Is Agent Loop? Agent Loop is Microsoft’s way of embedding advanced AI decision-making into Logic Apps workflows.

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 resource that was deployed as part of the module is then required later in the parent template and therefore an existing resource definition is used.

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 expired or been invalidated then services, applications, and or users who have not been provided a new key will cease to be able to invoke your workflow.