Azure Pipeline 错误:找不到与模板文件模式匹配的任何文件
Posted
技术标签:
【中文标题】Azure Pipeline 错误:找不到与模板文件模式匹配的任何文件【英文标题】:Azure Pipeline Error: Could not find any file matching the template file pattern 【发布时间】:2020-08-05 17:21:02 【问题描述】:在 Azure Pipeline 上作为代码工作,并尝试使用 YAML 管道在 Azure 中通过 ARM 模板创建资源。
在 Azure DevOps 中,我已将代码(部署 json、参数 json 和 yml 文件等)推送到功能分支下的 Azure Repos Git。
在运行管道时,由于“csmFile”值,我面临错误“错误:找不到与模板文件模式匹配的任何文件”。
我的 yml 文件包含以下 ARM 模板部署信息。
trigger:
branches:
include:
- dev-pipecode
pool:
vmImage: 'windows-latest'
steps:
- task: AzureResourceManagerTemplateDeployment@3
inputs:
deploymentScope: 'Resource Group'
azureResourceManagerConnection: 'company-development-Contributor'
subscriptionId: 'XXXXXXXX'
action: 'Create Or Update Resource Group'
resourceGroupName: 'name of the resource group'
location: 'North Europe'
templateLocation: 'Linked artifact'
csmFile: '$(System.DefaultWorkingDirectory)/AzureAuto/pipelineascode.json'
csmParametersFile: '$(System.DefaultWorkingDirectory)/AzureAuto/param-pipelineascode.json'
deploymentMode: 'Incremental'
我错过了什么吗?请指导我。谢谢。
【问题讨论】:
【参考方案1】:首先,只是为了确认。
基于你在任务中定义的$(System.DefaultWorkingDirectory)/AzureAuto/pipelineascode.json
,你需要确保pipelineascode.json
在repos中的位置应该是这样的:
Repository
| AzureAuto
| | pipelineascode.json
| | param-pipelineascode.json
这是我的存储库示例:
如果您的 ARM 模板存储库的结构确实符合上述规定,那么现在我想它应该与您的分支相关。
您的 master 分支是否仍包含 AzureAuto
文件夹和 pipelineascode.json
/param-pipelineascode.json
文件?
你可以去build result
你遇到构建错误信息的页面,确认分支名是不是你存放ARM模板文件的那个:
至于我为什么这么猜,是因为系统会默认基于master分支构建,而用户从new YAML管道和first开始 运行它。
此时,您需要将azure-pipelines.yml
文件从master
分支复制 到存储ARM 模板文件的功能分支。
然后去Pipelines
=> 打开对应的YAML build => Edit => 关注左上角,改变分支:
现在,这个 YAML 管道应该建立在您存储 ARM 模板的正确分支上,并成功找到 JSON 文件。
【讨论】:
感谢梅林的意见。我从 csmFile 和 csmParametersFile 参数中删除了“AzureAuto”并执行了管道。它成功了。不知道为什么它不需要特别提及存储库名称“AzureAuto”。以上是关于Azure Pipeline 错误:找不到与模板文件模式匹配的任何文件的主要内容,如果未能解决你的问题,请参考以下文章
在 Azure DevOps Pipeline 模板中使用变量
如何使 MSBuild MakeDir 任务在 Azure Pipeline YAML 模板中工作?
未捕获的错误:找不到类 'WindowsAzure\Common\ServicesBuilder' - MS Azure | PHP
Azure DevOps Build 出现错误:找不到程序集“System.ComponentModel.Annotations”