是否应在每次部署中都运行ARM模板

时间:2020-07-17 13:46:02

标签: azure-devops devops azure-resource-manager arm-template

使用模板部署基础结构时,它是希望在每个部署上都运行arm模板,还是应该运行一次arm模板以设置基础结构并创建另一个管道,以部署到由ARM设置的基础结构。 / p>

运行ARM->一次, 部署构建工件->重复

运行ARM,然后部署构建工件->重复

4 个答案:

答案 0 :(得分:0)

好吧,这没有答案,但是在我的书中,如果没有更改,则运行arm模板没有任何意义。您应该为IaC代码准备一个单独的仓库,或者为arm模板准备一个单独的版本

答案 1 :(得分:0)

取决于您要如何设置测试环境。在我的系统中,我将每个分支部署到新的测试环境,而不是将资源的单个实例用作“测试”实例并进行部署。因此,我确实将ARM模板部署作为部署管道的一部分运行。我将微服务的部署脚本和ARM模板与代码放在同一存储库中。这样一来,我正在寻找的基础,后端,前端的一致性就可以在微服务的一个存储库中一起存在。

答案 2 :(得分:0)

从我的角度来看,重新运行手臂模板取决于您项目的基础结构和配置是否已更新。

如果所构建项目的结构和配置未更新,则无需多次运行arm模板。您可以将构建工件直接部署到同一资源。

另一方面,如果您的项目需要新的资源或参数,则可以通过编辑Template配置文件(通常是json文件)来更新或创建新的资源。这使部署的环境可以满足您的项目需求。

简而言之,对此主题没有绝对的答案,仅取决于您的需求。

答案 3 :(得分:0)

想对另一端发表意见。我强烈建议您在每个版本中重新运行ARM基础结构部署,或者至少设置一个计划的部署。原因是,是的,根据您的资源,可能需要更多时间或几分钟。但是,在大型组织中,尤其是在开发人员或其他人员可能至少具有贡献者访问权限的较低环境中,存在漂移的风险。通过为每个部署重新运行ARM模板,可以确保状态与模板匹配,而无需添加或设置任何策略逻辑。

另外,我想说这是对您的基础架构代码的最终信心。您100%确信您的模板可重新运行。

相关问题