【问题标题】:Wildcards in VSTS Release DefinitionVSTS 版本定义中的通配符
【发布时间】:2017-12-12 19:10:18
【问题描述】:

我正在尝试将 Webjobs(其中 4 个)部署到应用服务,但在部署它们时出现错误 -

2017-12-11T11:44:09 ==============================================================================
2017-12-11T11:44:10 Got connection details for Azure App 
Service:'**********'
2017-12-11T11:44:10 ##[error]Error: More than one package 
matched with specified pattern. Please restrain the search 
pattern.
2017-12-11T11:44:13 Successfully updated deployment History 
at ***********
2017-12-11T11:44:13 ##[section]Finishing: Deploy Azure Webjob

下面是配置屏幕:-

知道如何从单个任务部署所有网络作业而不是执行多个任务吗?

【问题讨论】:

  • 我认为这是不可能的。如果您查看源代码 (github.com/Microsoft/vsts-tasks/blob/master/Tasks/…),此任务需要一个包,而不是包列表。
  • 但是我们可以使用通配符,所以如果有多个 zip 文件,它应该全部使用
  • 不,您可以使用通配符,这样您就不必指定 .zip 文件的确切路径。通配符不适用于选择多个文件。默认值 $(System.DefaultWorkingDirectory)/**/*.zip 意味着它会搜索嵌套在 DefaultWorkingDirectory 中某处的 zip 文件
  • 或者只使用相同的任务 4 次。
  • 感谢@WouterdeKort 和 Daniel 抽出宝贵时间 :)

标签: asp.net-web-api azure-devops azure-webjobs azure-pipelines-release-pipeline


【解决方案1】:

Azure App Deploy 任务确实需要通配符,但这并不意味着它可以部署多个包。通配符用于在多个文件夹中搜索 Web 部署包。

默认值为$(System.DefaultWorkingDirectory)/**/*.zip。这意味着该任务将在您的 System.DefaultWorkingDirectory 下方的某处搜索 .zip 文件。

如果您查看 App Deploy Task 的代码(是的!它是 open source on GitHub),您会看到只检查一个匹配文件:

 if(availableWebPackages.length > 1) {
      throw new Error(tl.loc('MorethanonepackagematchedwithspecifiedpatternPleaserestrainthesearchpattern'));
 }
 webDeployPkg = availableWebPackages[0];

要部署多个 Web 部署包,最简单的方法是克隆任务并确保每个搜索模式与单个 Web 部署包匹配。然后您将完成四个任务。

或者您在 GitHub 上发送拉取请求以扩展任务以一次部署多个包。

【讨论】:

    【解决方案2】:

    对于 Azure App Service Deploy 任务,它只能部署一个 webjob。

    由于您有四个 webjob,您应该确保包的通配符应该只匹配一个唯一的 webjob。

    • 如果要部署所有四个 webjob,可以使用四个 Azure App Service Deploy 任务(如 Daniel 所述),并确保每个任务只匹配一个 webjob。
    • 如果您只想部署一个更改的 webjob,您可以检测更改的 wenjob 并为其部署。详细步骤,可以参考this post

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-05-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-07-12
      • 2013-11-24
      • 1970-01-01
      相关资源
      最近更新 更多