Infrastructure as Code with Bicep
Objective
Deploy Azure infrastructure using Bicep, Microsoft's IaC DSL.
Tools & Technologies
BicepAzure CLIVS Code
Key Commands
az bicep build --file main.bicepaz deployment group create --template-file main.bicepaz bicep decompile --file template.jsonLab 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