【发布时间】:2026-01-26 10:20:02
【问题描述】:
我需要仅将修改后的资源部署到 Azure 生产,我们遵循基于中继的方法,使用 git 在源代码控制中管理 ARM 模板。
因此,我们从主管道和当前管道中删除了一个发布分支,将所有 ARM 模板和参数文件复制到一个放置位置,并且发布管道对每个组件都有单独的 ARM 部署任务。
- 每次添加新组件时,我们都需要修改发布管道以进行部署,有没有办法自动执行此操作?以便部署放置位置中可用的任何模板和参数文件。
- 在部署管道中,有什么方法可以识别特定版本的组件?由于提交历史记录将有多个由不同开发人员完成的拉取请求合并。
【问题讨论】:
-
ARM 部署是幂等的,所以如果资源没有改变它就不会改变..
-
您还有一个假设命令,可用于在部署之前检查更改:docs.microsoft.com/en-us/azure/azure-resource-manager/templates/…
-
@Thomas 我不知道它们是幂等的,我会检查一下。如何在发布管道中动态选择模板及其参数,因为我不想为每个资源创建一个 ARM 部署任务。部分意图是,如果将来有新组件,我们希望避免修改发布管道。
-
无论如何您都必须更新发布管道以覆盖 env 特定参数?
-
组件伴随着其环境特定的参数文件,如component.dev.parameters.json等。所以想法是使用通配符和模式匹配来获取组件模板及其参数文件发布管道中的环境阶段。例如在开发阶段我们会使用 *. Dev.Parameters.Json 到其他环境阶段类似的开发特定参数。
标签: azure azure-devops azure-pipelines azure-resource-manager