mcpField
U
update-avm-modules-in-bicep

update-avm-modules-in-bicep

github.com/githubCloud & DevOps40.5k8.6k installsUpdated today
Repository

About update-avm-modules-in-bicep

A skill for updating Azure Verified Modules (AVM) versions in Bicep files. It checks module versions, reviews potentially breaking changes, applies updates, and validates the result.

Key features

  1. 01Extract AVM modules and versions
  2. 02Discover latest versions from MCR
  3. 03Review breaking changes before updates
  4. 04Edit Bicep modules and parameters
  5. 05Run bicep lint and build

Use cases

  1. 01Refreshing AVM versions in a Bicep file
  2. 02Checking module changes before updating infrastructure code
  3. 03Validating Bicep after module version changes

Install

Copy the command and run it in a terminal.

$npx skills add https://github.com/github/awesome-copilot --skill update-avm-modules-in-bicep

After installing, type/update-avm-modules-in-bicepin Claude Code to confirm it loaded.

Details

From the project README

Update Azure Verified Modules in Bicep Files

Update Bicep file ${file} to use latest Azure Verified Module (AVM) versions. Limit progress updates to non-breaking changes. Don't output information other than the final output table and summary.

Process

  1. Scan: Extract AVM modules and current versions from ${file}
  2. Identify: List all unique AVM modules used by matching avm/res/{service}/{resource} using #search tool
  3. Check: Use #fetch tool to get latest version of each AVM module from MCR: https://mcr.microsoft.com/v2/bicep/avm/res/{service}/{resource}/tags/list
  4. Compare: Parse semantic versions to identify AVM modules needing update
  5. Review: For breaking changes, use #fetch tool to get docs from: https://github.com/Azure/bicep-registry-modules/tree/main/avm/res/{service}/{resource}
  6. Update: Apply version updates and parameter changes using #editFiles tool
  7. Validate: Run bicep lint and bicep build using #runCommands tool to ensure compliance.
  8. Output: Summarize changes in a table format with summary of updates below.

Tool Usage

Always use tools #search, #searchResults,#fetch, #editFiles, #runCommands, #todos if available. Avoid writing code to perform tasks.

Breaking Change Policy

⚠️ PAUSE for approval if updates involve:

  • Incompatible parameter changes
  • Security/compliance modifications
  • Behavioral changes

Output Format

Only display results in table with icons:

| Module | Current | Latest | Status | Action | Docs |
|--------|---------|--------|--------|--------|------|
| avm/res/compute/vm | 0.1.0 | 0.2.0 | 🔄 | Updated | [📖](link) |
| avm/res/storage/account | 0.3.0 | 0.3.0 | ✅ | Current | [📖](link) |

### Summary of Updates

Describe updates made, any manual reviews needed or issues encountered.

Icons

  • 🔄 Updated
  • ✅ Current
  • ⚠️ Manual review required
  • ❌ Failed
  • 📖 Documentation

Requirements

  • Use MCR tags API only for version discovery
  • Parse JSON tags array and sort by semantic versioning
  • Maintain Bicep file validity and linting compliance

Comments

Markdown supported