Objective

Deploy Azure infrastructure using Bicep, Microsoft's IaC DSL.

Tools & Technologies

  • Bicep
  • Azure CLI
  • VS Code

Key Commands

az bicep build --file main.bicep
az deployment group create --template-file main.bicep
az bicep decompile --file template.json

Lab Steps

01
Bicep Syntax

Write Bicep resources, parameters, variables, and outputs.

02
Modules

Break infrastructure into reusable Bicep modules.

03
Deploy

Deploy Bicep files directly without compiling to ARM JSON.

04
Decompile ARM

Convert existing ARM JSON templates to Bicep.

Challenges Encountered

  • Bicep module reference paths are relative
  • Resource dependency ordering matters for deployment

Key Takeaways

  • Bicep is significantly more readable than ARM JSON
  • Use targetScope = 'subscription' for subscription-level deployments