请参阅ARM模板

时间:2018-05-16 12:10:21

标签: azure azure-devops azure-pipelines azure-resource-manager azure-pipelines-release-pipeline

当我构建一个docker镜像时,我使用buildID作为图像的标记。然后,我通过ARM模板在Docker的Azue WebApp中部署docker镜像。 我使用VSTS构建来构建和推送映像,并使用VSTS版本为容器部署Azure WebApp。

我不想将buildID硬编码到ARM模板中,但我正在寻找一种方法来以某种方式引用ARM模板中的buildID变量。

任何想法?

2 个答案:

答案 0 :(得分:2)

如果您以前没有遇到过此问题,请花一些时间来审核https://docs.microsoft.com/en-us/vsts/build-release/concepts/definitions/release/variables?view=vsts&tabs=batch

只要文档正确,首先要在ARM模板中创建一个参数并将其检入git。

在您的vsts版本中,创建一个名为" BuildID" " Build Number" 的变量,具体取决于您的值实际上想要并为其赋值$(Build.BuildId / BuildNumber)。然后将此参数传递给ARM模板,它应该通过从构建工件中获取构建ID来工作。

NB。这是我的第一篇文章,欢迎任何反馈:)

答案 1 :(得分:1)

您始终可以将参数传递给模板文件。它看起来像:

deploy.json

...
"parameters": {
    "BuildNumber": {
      "type": "string"
    }
}
...

然后在VSTS步骤中,您需要设置以下参数:

enter image description here