VSTS Pipeline Deployment of ARM Error: Could not find any file matching the template file pattern

VSTS Pipeline Deployment of ARM Error: Could not find any file matching the template file pattern

我正在尝试在 VSTS 管道中部署 Azure ARM 脚本。

我 "Published" 构建步骤中的工件并下载了发布步骤中的工件。日志似乎表明它找到了 ARM 脚本(经过反复试验。找到的规定方式 here 似乎根本不起作用)。

但是我得到 错误:找不到与模板文件模式匹配的任何文件

顺便说一句,即使找不到文件,我也会收到此错误(这是有道理的..但当它确实找到文件时却没有)。当我在 Azure 门户中手动部署时,ARM 脚本部署正确。

我正在使用发布管道中的 Azure 资源组部署 步骤。

我不确定还有哪些其他信息可能有助于解决此问题,但请求并希望我能为您提供。

谢谢

2018-12-14T18:32:06.6009951Z ##[section]Starting: Azure Deployment:Create Or Update Resource Group action on ChrisGroup
2018-12-14T18:32:06.6015952Z 

==============================================================================
2018-12-14T18:32:06.6016124Z Task         : Azure Resource Group 
Deployment
2018-12-14T18:32:06.6016287Z Description  : Deploy an Azure resource manager (ARM) template to a resource group. You can also start, stop, delete, deallocate all Virtual Machines (VM) in a resource group
2018-12-14T18:32:06.6016444Z Version      : 2.141.4
2018-12-14T18:32:06.6016526Z Author       : Microsoft Corporation
2018-12-14T18:32:06.6016655Z Help         : [More Information] (https://aka.ms/argtaskreadme)
2018-12-14T18:32:06.6016801Z 
==============================================================================
2018-12-14T18:32:06.9610677Z Checking if the following resource group exists: ChrisGroup.
2018-12-14T18:32:07.2734470Z Resource group exists: true.
2018-12-14T18:32:07.2736899Z Creating deployment parameters.
2018-12-14T18:32:07.2809876Z The detected encoding for file 'D:\a\r1\a\IAC\ARM.json' is 'utf-8'
2018-12-14T18:32:07.3021166Z ##[error]Error: Could not find any file matching the template file pattern
2018-12-14T18:32:07.3030720Z ##[section]Finishing: Azure Deployment:Create Or Update Resource Group action on ChrisGroup

根据要求:

在我输入的模板参数字段中 -dailyreports_name '$(IACWeb)' -dailyreportsapi_name '$(IACAPI)'

天哪...它应该是变量文件的路径。嗯

一旦我输入覆盖模板参数,它就起作用了。

Microsoft 可能会将标签改写为 "Template Parameters File"

您需要将传入的参数放入"Override template parameters"。 "Template parameters" 字段实际上是对文件位置的引用。

##[error]错误:找不到与模板文件模式匹配的任何文件

在这里检查几件事:

  1. 检查参数文件和模板文件中的所有参数名称(区分大小写)。

  2. 如果您正在为 azure devops 管道使用 yml 文件,

    检查是否正确提及了所有 overrideParameters overrideParameters: '-environment "${{parameters.environment}}"' #for example

    检查 csmParametersFile , yml 中的 csmFile 路径

对我来说,问题是我在创建版本时必须 select 特定的内部版本号。如果不使用特定版本,默认保留最新版本选项,则会出现此错误。