部署多个 ARM 模板 Azure DevOps

Deploying multiple ARM templates AzureDevOps

我需要仅将修改后的资源部署到 Azure 生产环境,我们遵循基于主干的方法,使用 git 在源代码管理中管理 ARM 模板。

所以我们从主管道和当前流水线中切出一个发布分支,将所有 ARM 模板和参数文件复制到一个放置位置,并且发布流水线对每个组件都有单独的 ARM 部署任务。

  1. 每次我们添加一个新组件时,我们都需要修改发布管道以进行部署,有没有办法自动执行此操作?以便部署放置位置中可用的任何模板和参数文件。
  2. 在部署管道中,可以采用什么方法来识别特定版本的组件?由于提交历史将有多个由不同开发人员完成的拉取请求合并。

谢谢,Thomas。将您的建议作为答案发布以帮助其他社区成员。

您可以检查Azure Bicep and define multiple resources in its own file and it will generate the ARM for you. You can also look at the Using linked and nested templates when deploying Azure resources

Azure DevOps 中的 OOB 任务不允许您指定多个模板。

感谢@Thomas 指向 Azure Bicep,它值得考虑更新。根据我们当前的设置,我想出了一种仅部署修改后的模板的方法。

我使用 git diff 在最新提交中找到修改的文件,然后使用 Azure CLI 部署文件。

我已经在my blog post里面写的很详细了,有什么可以改进的请指教