Azure 部署准备助手
为使用 Azure Developer CLI 的项目生成部署配置、基础设施代码和容器文件。
文档要求先写入部署计划、经用户批准后执行,并明确禁止删除工作区、要求破坏性操作确认、使用托管身份、避免硬编码凭据及 SQL 管理员密码,且说明交接与部署边界;但首要强制写盘和广泛调用工具/相关技能增加了外部影响,权限范围、数据流、回滚方案及敏感信息处理仍不完整,因此扣分。
流程阶段、前置条件、失败分支和若干诊断信息较清楚,例如 Aspire、无可部署服务、unsupported resource type、错误订阅及 Functions 密钥存储;但多个关键引用文件、工具和后续技能未在本证据中提供,且触发规则与主描述存在冲突,静态阅读无法复现关键路径,因此不超过静态上限并扣分。
主描述限定 azd,但后续触发器扩展到所有 Azure 应用创建、修改、现代化和部署,存在误触发风险;部分专门技术有路由规则,但非适用边界和输入输出契约仍有限,也未说明中文支持或中国大陆网络环境适配,因此扣分。
具备清晰的阶段化结构、渐进式计划、产物位置、MIT 许可、作者和版本号,并提供大量参考文档、示例和故障排查;但未提供变更日志、明确维护责任/更新路径,且依赖工具和引用资源的安装说明不完整,因此未给满分。
目标产物(部署计划、azure.yaml、infra、Dockerfile)及 azd→validate→deploy 流程明确,安全和验证检查具有实用价值;但关键模板与执行证据未包含在选定技能材料中,无法静态确认生成结果可直接使用,只给接近静态上限的分数。
README 提供 CI/评估徽章和仓库文档入口,技能本身包含可审计的规则、命令和错误案例;但未提供覆盖此技能关键路径的具体测试套件、固定执行结果或独立复核证据,因此仅给有限分数。
- 主描述与实际触发范围不一致,可能在非 azd 场景误触发;应收紧触发条件。
- 强制在用户批准前写入工作区文件会产生外部副作用,应明确最小权限、回滚和失败恢复策略。
- 核心依赖的引用文档、MCP 工具和后续技能未随本证据提供,部署前需确认其可达性和版本兼容性。
- 未说明中国大陆网络可达性;若 Azure、文档或 MCP 服务不可达,核心流程可能受阻。
它能做什么 & 适用场景
azure-prepare 面向明确采用 Azure Developer CLI(azd)的项目,或已有 azure.yaml 的项目。它按照先规划、再执行、最后交接验证的流程,准备 Azure 部署所需的配置和基础设施代码。输出可包括 azure.yaml、Bicep 或 Terraform、Dockerfile,以及工作区根目录下的 .azure/deployment-plan.md。它只负责准备,不负责执行 azd up、azd deploy 或 terraform apply。
它分析工作区模式,收集部署需求,扫描代码库,选择 AZD、AZCLI、Bicep 或 Terraform 方案,并规划 Azure 服务架构。随后可生成 azure.yaml、infra/ 下的基础设施代码和 src/<component>/Dockerfile,应用安全规则,进行功能核验,并将部署计划状态更新为 Ready for Validation 后交给 azure-validate。它还规定了 Azure 上下文确认、破坏性操作确认、SQL Server 使用 Entra-only 身份验证,以及 Terraform 转换后清理模板提供的旧 Bicep 文件等约束。
- 开发者希望使用 azd 将新应用准备为 Azure 部署项目。
- 团队已有包含 azure.yaml 的项目,需要补充 Bicep、Terraform 或 Dockerfile。
- 维护者要为现有应用添加 Azure 服务和基础设施配置。
- 团队要将应用现代化并采用 Azure Functions、托管身份或事件驱动组件。
- 基础设施工程师希望在部署前生成并审阅一份结构化的 Azure 部署计划。
优缺点一览
- 规划文件、审批、准备、验证之间的流程边界清晰。
- 覆盖 azure.yaml、Bicep、Terraform 和 Dockerfile 等常见准备产物。
- 包含对 SQL Server 凭据生成、破坏性操作和现有工作区修改的具体约束。
- 明确区分准备阶段与 azure-deploy 负责的部署阶段。
- 仅适合明确采用 azd 或已有 azure.yaml 的场景;非 azd 部署不应使用它。
- 源材料没有提供该技能独立的测试覆盖或验收场景证据。
- 执行依赖 Azure CLI、azd、Terraform 等外部工具和 Azure 上下文。
- 技能要求先获得用户批准,自动化流水线需要适配这一交互流程。
如何安装
仓库整体可通过 npx skills add microsoft/skills 安装,并在向导中选择所需技能。使用 Copilot CLI 时,也可运行 /plugin marketplace add microsoft/skills,再运行 /plugin install azure-skills@skills。源材料未说明单独安装 azure-prepare 的命令。
如何使用
在明确要求使用 azd,或项目已经存在 azure.yaml 时触发,例如:“使用 azd 为这个应用准备 Azure 部署,生成 azure.yaml 和 Bicep 基础设施。”技能要求先在工作区根目录创建 .azure/deployment-plan.md,完成并展示计划、获得用户批准后才执行准备工作。准备完成后,应将计划状态更新为 Ready for Validation 并交给 azure-validate;不要直接运行部署命令。