用途:在 Bicep 文件 ${file} 中把 Azure Verified Modules(AVM)更新到最新版本,并控制为仅非破坏性变更的进度更新,输出仅限于最终结果表格与摘要。
主要能力与流程:
- 扫描:从 ${file} 中提取 AVM 模块及其当前版本。
- 识别:通过 avm/res/{service}/{resource} 匹配,用 #search 列出所有唯一 AVM 模块。
- 检查:用 #fetch 从 MCR 获取各模块最新版本,API 为 https://mcr.microsoft.com/v2/bicep/avm/res/{service}/{resource}/tags/list。
- 比较:解析语义化版本,找出需要更新的模块。
- 复核:若涉及破坏性变更,用 #fetch 读取 https://github.com/Azure/bicep-registry-modules/tree/main/avm/res/{service}/{resource} 的文档。
- 更新:用 #editFiles 应用版本更新与参数变更。
- 验证:用 #runCommands 运行 bicep lint 和 bicep build 确保合规。
- 输出:以表格加摘要形式汇总变更。
工具约定:优先使用 #search、#searchResults、#fetch、#editFiles、#runCommands、#todos,避免自行编写代码完成任务。
破坏性变更策略:若更新涉及不兼容的参数变更、安全/合规修改或行为变更,须暂停并等待批准。
输出格式:仅以带图标的表格展示,列为 Module、Current、Latest、Status、Action、Docs;图标含义为 🔄 已更新、✅ 最新、⚠️ 需人工复核、❌ 失败、📖 文档。表格下方给出“Summary of Updates”,描述所做更新、需人工复核之处或遇到的问题。
要求:版本发现仅使用 MCR tags API,解析 JSON 标签数组并按语义化版本排序,保持 Bicep 文件有效并通过 lint。具体命令参数、收费与适用平台资料暂未提供。