Azure管道:DownloadBuildArtifacts @ 0任务itemPattern,无法下载2个具有不同文件后缀和名称模式的文件

问题描述

我使用DownloadBuildArtifacts @ 0

im,我喜欢下载所有* .ipa文件以及manifest.plist 文件。 撰写时:itemPattern: '**/*.ipa 它下载了我的ipa文件 但是当我这样做时:

- job: copy_back_files_to_self_hosted_connect
  dependsOn: mac_agent 
  timeoutInMinutes: 10
  pool: Default
  steps:
    - task: DownloadBuildArtifacts@0
      inputs:
        buildType: 'current'
        downloadType: 'single'
        artifactName: 'Artifacts'
        itemPattern: '**/*.ipa|manifest.plist'
        downloadpath: '$(System.ArtifactsDirectory)'
    - task: copyFiles@2
      inputs:
        SourceFolder: '$(System.ArtifactsDirectory)'
        Contents: '**/*.ipa|manifest.plist'
        TargetFolder: '$(Agent.HomeDirectory)/../${{parameters.FolderCompile}}'

它下载了我所有的文件,不是ipa,也不是manifest.plist
始终下载正确的模式是什么?

解决方法

您可以通过以下方式做到这一点:

- task: DownloadBuildArtifacts@0
  inputs:
    buildType: 'current'
    downloadType: 'single'
    artifactName: 'Artifacts'
    itemPattern: |
      **/*.ipa
      manifest.plist
    downloadPath: '$(System.ArtifactsDirectory)'
,

来自上一张票证。...

您需要按以下格式定义任务:

- task: DownloadBuildArtifacts@0
  displayName: 'Download Build Artifacts'
  inputs:
    buildType: 'current'
    downloadType: 'single'
    artifactName: Artifacts
    itemPattern: |
     **/*.ipa
     **/manifest.plist

- task: CopyFiles@2
  displayName: 'Copy Files'
  inputs:
    SourceFolder: '$(System.ArtifactsDirectory)'
    Contents: |
     **/*.ipa
     **/manifest.plist
    TargetFolder: '$(Agent.HomeDirectory)/../${{parameters.FolderCompile}}'

由于.ipamanifest.plist都来自构建工件:工件,因此它们都在 Artifacts 文件夹下。因此,请不要忘记使用**/manifest.plist来检索所需的文件。