【发布时间】:2020-03-06 07:33:15
【问题描述】:
问题总结
我正在尝试构建项目并将其部署到 Azure Web 应用程序。我已经设置了 Azure Web App。对于构建管道,我采用了来自 Microsoft 的以下构建 YAML 模板:
我不知道 YAML 模板的variables 部分中的{{ azureRmConnection.Id }} 指的是什么或如何使用它。
背景
双大括号 ({{ }}) 语法用于计算表达式,而管道变量使用美元 ($()) 语法引用。所以我认为azureRmConnection 是构建应该已经可以访问的东西,而不是需要设置管道变量。
我尝试过的
搜索了 Microsoft 的文档、Google 和 StackOverflow。
查看我的 Azure Web 应用程序试图找到任何明显的东西。
将 Web 应用的订阅 ID 添加为对管道的变量引用,名称为
azureRmConnection.Id。关于双括号语法的参考 Ansible YAML 语法文档:https://docs.ansible.com/ansible/latest/reference_appendices/YAMLSyntax.html
代码
variables:
# Azure Resource Manager connection created during pipeline creation
azureSubscription: '{{ azureRmConnection.Id }}'
预期和实际结果
预期
我希望构建有一个有效的azureRmConnection.Id,因此不会因为它丢失或无效而失败。
实际
构建失败并出现以下错误:
存在资源授权问题:“管道无效。作业部署:步骤输入 azureSubscription 引用服务连接 {{ azureRmConnection.Id }} 无法找到。服务连接不存在或未经授权使用。授权详情请参考https://aka.ms/yamlauthz。"
【问题讨论】:
-
很高兴您找到了解决方案。您可以接受它作为答案。它将帮助有相同错误的其他社区用户。谢谢。 :)
标签: azure azure-devops azure-pipelines azure-web-app-service azure-pipelines-build-task