VSTS中的构建arm模板失败,并显示有关'artifactsLocation'的错误

时间:2018-02-21 08:53:49

标签: azure azure-devops

通常,当我通过visual studio进行部署时,_artifactsLocation会在编辑参数时显示出来,那么VSTS中应该是什么?如何设置它?

2018-02-21T08:49:46.1918199Z ## [错误]部署模板验证失败:'未提供第1行和第182行的模板参数'_artifactsLocation'的值。有关使用详情,请参阅https://aka.ms/arm-deploy/#parameter-file。 2018-02-21T08:49:46.1919769Z ## [错误]创建或更新模板部署时任务失败。

2 个答案:

答案 0 :(得分:0)

您可以在参数文件中指定它,然后在使用Azure资源组部署任务的模板参数输入框中指定文件路径。

此外,可以通过在Azure资源组部署任务的覆盖模板参数输入框中指定来覆盖参数。

如果您通过Azure PowerShell任务调用脚本,可以在参数中指定它:feature,相关问题:The value for the template parameter '_artifactsLocation' is not provided

答案 1 :(得分:0)

这听起来像您正在使用VS中的Azure资源组部署模板来通过VSTS进行部署。

它使用MSDeploy作为ARM模板部署的一部分来部署服务。

由VS项目模板生成的Powershell脚本将包含您的服务的ZIP文件上载到Blob存储,并将URL和其他信息放入_artifactsLocation和其他ARM模板参数中。

相反,您可以从ARM模板中删除与工件相关的参数和MSDeploy资源。然后,模板仅包含与基础架构相关的资源。

此后,在ARM模板部署之后,在VSTS Release管道中添加“ Deploy to App Service”步骤。然后可以用来部署您的服务代码。