Andrew Wilson's Blog

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

Bicep | Conditional Iterative Deployment

Background I have recently been looking at creating multiple of the same resource using Bicep. There is however a condition where I would wish for the set of resources not to be deployed. The following stages show my work through of this particular problem (using a storage account resource as an example): Conditional Deployment Conditional Deployment is used where you may or may not wish to deploy a given resource depending on the outcome of a given condition (if statement).

Bicep Template | Shared Variable File Pattern

Background I have recently been playing around with some of the Bicep functions when I came across a pattern by Microsoft called the Shared Variable File Pattern. This nifty pattern describes a method in which you can extract what would either be commonly used or complex configuration values away from your Bicep Template. Using the pattern will allow you to retain easy to read and manageable Bicep templates where you have modelled large variable configurations and or configuration values that are used repeatedly across your templates (prevents multiple copies of the value that would need to be maintained).

Automating Deployment of Azure Consumption Logic Apps | Bicep and ARM

Azure Logic Apps Azure Logic Apps is an Azure Integration Service (AIS) that provides you the ability to create and run automated workflows with little to no code. Consumption Logic Apps are developed using the visual designer within the Azure Portal. If you are new to developing Azure Logic Apps, there is great Microsoft Learning material to get you started: What are Azure Logic Apps | https://learn.microsoft.com/en-us/azure/logic-apps/logic-apps-overview Introduction to Azure Logic Apps | https://learn.

Fluent UI | React | Controlled multi-select Dropdown - Selected Keys

Problem Space I ran into a problem the other day working with the Fluent UI React component Controlled Multi-select Dropdown. As context, here is my redacted code and explanation: import { Dropdown, IDropdownOption } from 'office-ui-fabric-react'; // office-ui-fabric-react@7.204.0 export interface State { itemList: IDropdownOption[]; selectedItems: string[]; } export default class DropDownExample extends React.Component<any, State> { constructor(context) { super(context); this.state = { itemList: [{ key: 'None', text: 'None' }], selectedItems: [] } this.

Azure DevOps Pipeline | Git Shallow Fetch

Problem Space I have been recently working on building a new Yaml pipeline in Azure DevOps and wished to use the GitVersion Task, however, upon running the pipeline the task failed with the following error: ERROR [../../.. ..:..:..:..] An unexpected error occurred: System.NullReferenceException: Object reference not set to an instance of an object. After some digging and a conversation with one of my colleagues, it turns out there has been a change on Azure DevOps pipelines.