If you want to create an Azure Automation variable in Bicep you will use a resource definition like this. resource existingAutomationAccountResource 'Microsoft.Automation/automationAccounts@2023-11-01' existing = { name: 'automationAccountName' } resource variablesResource 'Microsoft.Automation/automationAccounts/variables@2023-11-01' = { name: 'variableName' parent: existingAutomationAccountResource properties: { description: 'description' isEncrypted: 'false' value: 'value' } } For variables Azure Automation supports different types: String , Boolean , DateTime , Integer and Not Specified . Below you can find some examples how to define these values in Bicep format. String values should be put between double quotes. resource stringVariablesResource 'Microsoft.Automation/automationAccounts/variables@2023-11-01' = { name: 'stringVariable' parent: existingAutomationAccountResource ...
When connecting to external resources like Azure Resource Manager you will need a service connection in Azure DevOps. Normally I utilize a service principal for this purpose. The certificate issued by Microsoft Entra ID was normally valid for two years but Microsoft changed this to three months in the release of January 18th and is promoting the usage of Workload identity federation (WIF). When testing this WIF based service connection I noticed that the OIDC token is only valid for about 50 minutes. This time is to short for the PowerShell script I use to monitor the Azure Image Builder image builds. These image build processes can take up to four hours but fail now with an error message like the one below. A configuration issue is preventing authentication - check the error message from the server for details. You can modify the configuration in the application registration portal. See https://aka.ms/msal-net-invalid-client for details. Original exception: AADSTS700...