【问题标题】:Error: More than one package matched with specified pattern: *.deploy.cmd. Please restrain the search pattern错误:多个包与指定模式匹配:*.deploy.cmd。请限制搜索模式
【发布时间】:2019-07-04 15:40:14
【问题描述】:

Azure DevOps Build 工件 drop 包含以下文件:

  • Project1.zip
  • Project1.deploy.cmd
  • Project2.zip
  • Project2.deploy.cmd

这些文件是单个解决方案的构建输出的结果。

我想将 Project1 Web 应用程序部署到 Azure。

我设置了发布定义并向其添加了部署 Azure Web 服务任务。任务包文件或文件夹的路径包含与一个文件 Project1.zip 完全匹配的值。我没有在任何地方指定任何 *.deploy.cmd 文件。

当版本执行时,它在该任务上失败并出现错误: 多个包与指定模式匹配:*.deploy.cmd。请限制搜索模式。

我发现的唯一解决方法是删除 2.deploy.cmd 以便部署 dask 不会使用指定的搜索模式找到多个文件。但我不想删除它,特别是因为我也想最终部署 Project2。如何解决这个问题?

【问题讨论】:

标签: azure-devops msdeploy webdeploy


【解决方案1】:

我建议您将工件放在不同的文件夹中。

您可以在调用 Web 部署任务之前使用 Powershell 任务

  • 创建两个文件夹
  • 将项目 1 的 .cmd 和 .zip 文件夹移到一个文件夹中
  • 将项目 2 的 .cmd 和 .zip 文件夹移动到第二个文件夹中

然后您可以针对项目 1 的文件夹路径调用您的 Web 部署任务,这应该可以避开您的问题。

您还可以提取 zip 文件,然后将 Web 部署任务指向该文件夹,如果上述内容对于您的特定用例而言过于复杂或失败,这也可能对您有所帮助。

【讨论】:

    【解决方案2】:

    不要使用通配符。指定要部署的文件的确切路径。如果要部署多个事物,请使用多个任务。

    【讨论】:

    • 在哪里指定?我已经指定了单张卡片的路径,没有通配符。
    • 暂时无法指定deploy.xml。
    猜你喜欢
    • 2019-08-25
    • 1970-01-01
    • 2023-03-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-12-08
    • 1970-01-01
    相关资源
    最近更新 更多