首页 > 解决方案 > DevOp Pipeline:错误:多个包与指定模式匹配:D:\a\r1\a\**\*.zip

问题描述

##[错误]错误:多个包与指定模式匹配:D:\a\r1\a***.zip。请限制搜索模式。

我是 DevOp 的新手。我不太清楚如何在管道中配置 yaml。默认情况下,创建了一个模板,我像这样在里面添加了档案和发布任务。

trigger:
- master

pool:
  vmImage: 'windows-latest'

variables:
  solution: '**/*.sln'
  buildPlatform: 'Any CPU'
  buildConfiguration: 'Release'

steps:
- task: NuGetToolInstaller@1

- task: NuGetCommand@2
  inputs:
    restoreSolution: '$(solution)'

- task: VSBuild@1
  inputs:
    solution: '$(solution)'
    msbuildArgs: '/p:DeployOnBuild=true /p:WebPublishMethod=Package /p:PackageAsSingleFile=true /p:SkipInvalidConfigurations=true /p:DesktopBuildPackageLocation="$(build.artifactStagingDirectory)\WebApp.zip" /p:DeployIisAppPath="Default Web Site"'
    platform: '$(buildPlatform)'
    configuration: '$(buildConfiguration)'

- task: VSTest@2
  inputs:
    platform: '$(buildPlatform)'
    configuration: '$(buildConfiguration)'
 
- task: ArchiveFiles@2
  inputs:
    rootFolderOrFile: '$(Build.BinariesDirectory)'
    includeRootFolder: true
    archiveType: 'zip'
    archiveFile: '$(Build.ArtifactStagingDirectory)/$(Build.BuildId).zip'
    replaceExistingArchive: true
    
- task: PublishBuildArtifacts@1
  inputs:
    PathtoPublish: '$(Build.ArtifactStagingDirectory)'
    ArtifactName: 'drop'
    publishLocation: 'Container'

我想有什么关系

$(System.DefaultWorkingDirectory)/**/*.zip

不确定我需要配置什么。

标签: azure-devopscontinuous-integrationpipeline

解决方案


##[错误]错误:多个包与指定模式匹配:D:\a\r1\a***.zip。请限制搜索模式。

此错误消息表明您在 .zip 中有多个 .zip 文件$(Build.ArtifactStagingDirectory)

在您的 YAML 文件中,

/p:DesktopBuildPackageLocation="$(build.artifactStagingDirectory)\WebApp.zip"

archiveFile: '$(Build.ArtifactStagingDirectory)/$(Build.BuildId).zip'

生成 .zip 文件$(Build.ArtifactStagingDirectory)

您需要指定要部署的文件,如下所示:

$(System.DefaultWorkingDirectory)/**/WebApp.zip

推荐阅读