Skip to content

Feature Request: Support bicep as a key in requiredVersions in azure.yaml #8080

@Roopan-Microsoft

Description

@Roopan-Microsoft
  • Make sure you've installed the latest version using instructions

Output from azd version
azd version 1.23.13

Describe the bug
The requiredVersions property in azure.yaml currently only supports azd as a key. There is no way to declare a minimum Bicep CLI version requirement for a template. When a template uses Bicep features that require a specific Bicep version (e.g., >= 0.33.0), users with an older bicep version receive unclear compilation errors with no indication that the root cause is a Bicep version mismatch.

Image

We request adding bicep as a supported key under requiredVersions so that azd can validate the bundled Bicep version against the template's requirement and surface a clear, actionable message to the user.

To Reproduce

  1. Create a template that uses Bicep features requiring version >= 0.33.0 (e.g., AVM module references with newer syntax)
  2. Remove the pre-compiled main.json
  3. Use an older bicep version
  4. Run azd provision or azd up
  5. Observe: Bicep compilation errors with no mention of version mismatch

Expected behavior
azd should check the bundled Bicep version against a requiredVersions.bicep declaration in azure.yaml and display a clear message, for example:

ERROR: This template requires Bicep version >= 0.33.0, but your azd bundles version 0.26.54.
Please update bicep to the latest version: az bicep upgrade

Environment
Information on your environment:

  • Language: Bicep 0.33.0+ (template requirement)
  • IDE: Visual Studio Code 1.96+
  • OS: Windows 11 / macOS / Linux (cross-platform issue)
  • Template: multi-agent-custom-automation-engine-solution-accelerator

Additional context

  • This affects multiple Foundry AI templates that use newer Bicep features (AVM modules, etc.)
  • The requiredVersions.azd check already works well — extending the same pattern to bicep would be a natural addition.

Metadata

Metadata

Assignees

Labels

area/bicepBicep-specific provisioningarea/projectProject config, project_manager, service_managerarea/provisioningBicep/Terraform/ADE provisioningarea/schemaazure.yaml JSON schemasengineering itemInternal engineering work itemissue-addressedIssue has been addressed

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions