Поделиться через


DownloadPipelineArtifact@2 — задача "Скачать артефакты конвейера" версии 2

Используйте эту задачу для скачивания артефактов конвейера из предыдущих этапов этого конвейера или из другого конвейера.

Примечание

Дополнительные сведения, включая команды Azure CLI, см. в статье Скачивание артефактов.

Используйте эту задачу для скачивания артефактов конвейера из предыдущих этапов этого конвейера или из другого конвейера.

Важно!

Эта задача поддерживается только в Azure DevOps Services. Если вы используете его на Azure DevOps Server, вы получите сообщение об ошибке, аналогичное Pipeline Artifact Task is not supported in on-premises. Please use Build Artifact Task instead. Использованию артефактов сборки, если вы используете Azure DevOps Server или TFS 2018.

Синтаксис

# Download Pipeline Artifacts v2
# Download build and pipeline artifacts.
- task: DownloadPipelineArtifact@2
  inputs:
    buildType: 'current' # 'current' | 'specific'. Alias: source. Required. Download artifacts produced by. Default: current.
    #project: # string. Required when source == specific. Project. 
    #definition: # string. Alias: pipeline. Required when source == specific. Build pipeline. 
    #specificBuildWithTriggering: false # boolean. Alias: preferTriggeringPipeline. Optional. Use when source == specific. When appropriate, download artifacts from the triggering build. Default: false.
    #buildVersionToDownload: 'latest' # 'latest' | 'latestFromBranch' | 'specific'. Alias: runVersion. Required when source == specific. Build version to download. Default: latest.
    #branchName: 'refs/heads/master' # string. Alias: runBranch. Required when source == specific && runVersion == latestFromBranch. Branch name. Default: refs/heads/master.
    #pipelineId: # string. Alias: runId | buildId. Required when source == specific && runVersion == specific. Build. 
    #tags: # string. Optional. Use when source == specific && runVersion != specific. Build Tags. 
    #allowPartiallySucceededBuilds: false # boolean. Optional. Use when source == specific && runVersion != specific. Download artifacts from partially succeeded builds. Default: false.
    #allowFailedBuilds: false # boolean. Optional. Use when source == specific && runVersion != specific. Download artifacts from failed builds. Default: false.
    #artifactName: # string. Alias: artifact. Artifact name. 
    #itemPattern: '**' # string. Alias: patterns. Matching patterns. Default: **.
    targetPath: '$(Pipeline.Workspace)' # string. Alias: path | downloadPath. Required. Destination directory. Default: $(Pipeline.Workspace).

Входные данные

buildType - Скачивание артефактов, созданных
Входной псевдоним: source. string. Обязательный. Допустимые значения: current (текущий запуск), specific (конкретный запуск). Значение по умолчанию: current.

Скачивает артефакты, созданные текущим запуском конвейера или из определенного запуска конвейера.


project - Проекта
string. Требуется при .source == specific

Указывает имя проекта или GUID, с которого нужно скачать артефакты конвейера.


definition - Конвейер сборки
Входной псевдоним: pipeline. string. Требуется при .source == specific

Идентификатор определения конвейера. В работающем конвейере definitionId можно найти в переменной System.DefinitionId . Также definitionId можно получить из URL-адреса на странице обзора конвейера на портале Azure DevOps. В следующем примере definitionId URL-адреса имеет значение 78: https://dev.azure.com/fabrikam-inc/FabrikamFiber/_build?definitionId=78&_a=summary. Чтобы скачать артефакты из определенного определения конвейера, запишите definitionId из этого конвейера и укажите его в pipeline качестве параметра .


specificBuildWithTriggering - При необходимости скачайте артефакты из сборки, запускающей активацию.
Входной псевдоним: preferTriggeringPipeline. boolean. Необязательный элемент. Используйте при source == specific. Значение по умолчанию: false.

Если этот флажок установлен, задача скачивает артефакты из запуска сборки. Если сборка из указанного конвейера не запускается, задача скачивает артефакты из сборки, указанной в параметрах ниже.


buildVersionToDownload - Скачиваемая версия сборки
Входной псевдоним: runVersion. string. Требуется при .source == specific Допустимые значения: latest, latestFromBranch (последняя версия из определенной ветви и указанных тегов сборки), specific (конкретная версия). Значение по умолчанию: latest.

Указывает версию сборки для скачивания.


branchName - Имя ветви
Входной псевдоним: runBranch. string. Требуется при .source == specific && runVersion == latestFromBranch Значение по умолчанию: refs/heads/master.

Указывает фильтр для имени ветви или ссылки. Например: refs/heads/develop.


pipelineId - Построить
Входной псевдоним: runId | buildId. string. Требуется при .source == specific && runVersion == specific

Идентификатор запуска конвейера для скачивания артефактов. В работающем конвейере buildId можно найти в переменной Build.BuildId . Также buildId можно получить из URL-адреса на странице сводки по запуску конвейера на портале Azure DevOps. В следующем примере buildId URL-адреса имеет значение 1088: https://dev.azure.com/fabrikam-inc/FabrikamFiber/_build/results?buildId=1088&view=results. Чтобы скачать артефакты из определенного запуска конвейера, запишите buildId из этого запуска и укажите его в buildId качестве параметра .


tags - Теги сборки
string. Необязательный элемент. Используйте при source == specific && runVersion != specific.

Разделенный запятыми список тегов, которые задача использует для возврата сборок с тегами. Сборки без параметров не возвращаются.


allowPartiallySucceededBuilds - Скачивание артефактов из частично успешных сборок.
boolean. Необязательный элемент. Используйте при source == specific && runVersion != specific. Значение по умолчанию: false.

Указывает, загружает ли задача сборки артефакты: успешная или частично выполненная сборка.


allowFailedBuilds - Скачивание артефактов из неудачных сборок.
boolean. Необязательный элемент. Используйте при source == specific && runVersion != specific. Значение по умолчанию: false.

Если этот флажок установлен, задача сборки скачивает артефакты независимо от того, была ли сборка успешной или неудачной.


artifactName - Имя артефакта
Входной псевдоним: artifact. string.

Указывает имя загружаемого артефакта. Если значение остается пустым, задача скачивает все артефакты, связанные с выполнением конвейера.


itemPattern - Шаблоны сопоставления
Входной псевдоним: patterns. string. Значение по умолчанию: **.

Шаблоны сопоставления файлов, ограничивающие скачанные файлы. Значением может быть один или несколько шаблонов сопоставления файлов, которые являются новыми разделителями строк. Дополнительные сведения о шаблонах сопоставления файлов.


targetPath - Целевой каталог
Входной псевдоним: path | downloadPath. string. Обязательный. Значение по умолчанию: $(Pipeline.Workspace).

Указывает относительный или абсолютный путь на компьютере агента, куда будут загружены артефакты. Если применяется параметр множественной загрузки (оставляя пустое имя артефакта), для каждой загрузки будет создаваться вложенный каталог. Узнайте больше об артефактах в Azure Pipelines.


Параметры управления задачами

Помимо входных данных, все задачи имеют параметры управления. Дополнительные сведения см. в разделе Параметры управления и общие свойства задачи.

Выходные переменные

Эта задача определяет следующие выходные переменные, которые можно использовать в последующих шагах, заданиях и этапах.

BuildNumber
Хранит номер сборки источника артефакта конвейера.

Из-за обратной совместимости эта переменная возвращает BuildId.

Дополнительные сведения о переменных сборки.

Эта задача определяет следующие выходные переменные, которые можно использовать в последующих шагах, заданиях и этапах.

BuildNumber
Хранит номер сборки источника артефакта конвейера.

Комментарии

Важно!

Эта задача поддерживается только в Azure DevOps Services. Если вы используете его на Azure DevOps Server, вы получите сообщение об ошибке, аналогичное Pipeline Artifact Task is not supported in on-premises. Please use Build Artifact Task instead. Использованию артефактов сборки, если вы используете Azure DevOps Server или TFS 2018.

Используйте эту задачу для скачивания артефактов конвейера из предыдущих этапов этого конвейера или из другого конвейера. По умолчанию артефакты скачиваются в $(Pipeline.Workspace). Если не указать имя артефакта, для каждого скачаемого артефакта будет создан подкаталог. Вы можете использовать шаблоны сопоставления файлов , чтобы ограничить файлы, которые требуется скачать.

Ключевые слова публикации и скачивания — это ярлыки задач для публикации и скачивания артефактов конвейера.

Как найти идентификатор конвейера, из которого нужно скачать артефакт?

Поиск definitionId для определенного определения конвейера

В работающем конвейере definitionId можно найти в переменной System.DefinitionId . Также definitionId можно получить из URL-адреса на странице обзора конвейера на портале Azure DevOps. В следующем примере definitionId URL-адреса имеет значение 78: https://dev.azure.com/fabrikam-inc/FabrikamFiber/_build?definitionId=78&_a=summary. Чтобы скачать артефакты из определенного определения конвейера, запишите definitionId из этого конвейера и укажите его в pipeline качестве параметра .

Поиск buildId для конкретного запуска конвейера

Идентификатор запуска конвейера для скачивания артефактов. В работающем конвейере buildId можно найти в переменной Build.BuildId . Также buildId можно получить из URL-адреса на странице сводки по запуску конвейера на портале Azure DevOps. В следующем примере buildId URL-адреса имеет значение 1088: https://dev.azure.com/fabrikam-inc/FabrikamFiber/_build/results?buildId=1088&view=results. Чтобы скачать артефакты из определенного запуска конвейера, запишите buildId из этого запуска и укажите его в buildId качестве параметра .

Примеры

Скачивание определенного артефакта

# Download an artifact named 'WebApp' to 'bin' in $(Build.SourcesDirectory)
- task: DownloadPipelineArtifact@2
  inputs:
    artifactName: 'WebApp'
    targetPath: $(Build.SourcesDirectory)/bin

Скачивание артефактов из определенного проекта или конвейера

# Download artifacts from a specific pipeline.
- task: DownloadPipelineArtifact@2
  inputs:
    buildType: 'specific'
    project: 'FabrikamFiber'
    definition: 12
    buildVersionToDownload: 'latest'

Скачивание артефактов из определенной ветви

# Download artifacts from a specific branch with a tag
- task: DownloadPipelineArtifact@2
  inputs:
    buildType: 'specific'
    project: 'FabrikamFiber'
    definition: 12
    buildVersionToDownload: 'latestFromBranch'
    branchName: 'refs/heads/master'
    tags: 'testTag'

Скачивание артефакта из определенного запуска сборки

# Download an artifact named 'WebApp' from a specific build run to 'bin' in $(Build.SourcesDirectory)
- task: DownloadPipelineArtifact@2
  inputs:
    buildType: 'specific'
    artifactName: 'WebApp'
    targetPath: $(Build.SourcesDirectory)/bin
    project: 'FabrikamFiber'
    definition: 12
    buildVersionToDownload: 'specific'
    pipelineId: 40

Требования

Требование Описание
Типы конвейеров YAML, классическая сборка, классический выпуск
Выполняется в Агент, DeploymentGroup
Требования Нет
Capabilities Эта задача не удовлетворяет требованиям для последующих задач в задании.
Ограничения команд Любой
Устанавливаемые переменные Любой
Версия агента 2.164.1 или более поздней версии
Категория задач Служебная программа