Andrew Wilson's Blog

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

Bicep Tips and Tricks | #3 | Naming Convention and Functions

Overview One of my bugbears is seeing either a complete lack of naming conventions or manual naming mechanisms that introduce human error through mistakes and misunderstandings. Naming conventions are incredibly important, but equally critical is how they’re implemented and maintained. …


Bicep Tips and Tricks | #2 | Centralize Core Parameters with Types, Constructors, and Imports

Overview When building IaC templates we strive to enable them to be environment agnostic, configurable even. One of the mechanisms that we do this is through lots of “Core Parameters” that disseminate the fundamental details of our deployment and resources. The number of core parameters …


Bicep Tips and Tricks | #1 | Template Versioning and Applying to Azure Resource Tags

The first of many For those who know me well, starting a bicep tips and tricks series would not be a surprise to them. The moment the Bicep language was introduced, I knew I would be completely obsessed. I love writing bicep templates and even more the clever refinement to make them reusable, …


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 …


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 …