UniversalPackages@0 — задача универсального пакета версии 0

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

Синтаксис

# Universal packages v0
# Download or publish Universal Packages.
- task: UniversalPackages@0
  inputs:
    command: 'download' # 'download' | 'publish'. Required. Command. Default: download.
    downloadDirectory: '$(System.DefaultWorkingDirectory)' # string. Required when command = download. Destination directory. Default: $(System.DefaultWorkingDirectory).
    #publishDirectory: '$(Build.ArtifactStagingDirectory)' # string. Required when command = publish. Path to file(s) to publish. Default: $(Build.ArtifactStagingDirectory).
  # Feed & package details
    feedsToUse: 'internal' # 'internal' | 'external'. Alias: internalOrExternalDownload. Required when command = download. Feed location. Default: internal.
    #externalFeedCredentials: # string. Alias: externalEndpoint. Optional. Use when internalOrExternalDownload = external && command = download. organization/collection connection. 
    #vstsFeed: # string. Alias: feedListDownload. Required when internalOrExternalDownload = internal && command = download. Feed. 
    #vstsFeedPackage: # string. Alias: packageListDownload. Required when internalOrExternalDownload = internal && command = download. Package name. 
    #vstsPackageVersion: # string. Alias: versionListDownload. Required when internalOrExternalDownload = internal && command = download. Version. 
    #feedDownloadExternal: # string. Required when internalOrExternalDownload = external && command = download. Feed (or Project/Feed if the feed was created in a project). 
    #packageDownloadExternal: # string. Required when internalOrExternalDownload = external && command = download. Package name. 
    #versionDownloadExternal: # string. Required when internalOrExternalDownload = external && command = download. Version. 
  # Feed & package details
    #feedsToUsePublish: 'internal' # 'internal' | 'external'. Alias: internalOrExternalPublish. Required when command = publish. Feed location. Default: internal.
    #publishFeedCredentials: # string. Alias: externalEndpoints. Required when internalOrExternalPublish = external && command = publish. organization/collection connection. 
    #vstsFeedPublish: # string. Alias: feedListPublish. Required when internalOrExternalPublish = internal && command = publish. Destination Feed. 
    #vstsFeedPackagePublish: # string. Alias: packageListPublish. Required when internalOrExternalPublish = internal && command = publish. Package name. 
    #feedPublishExternal: # string. Required when internalOrExternalPublish = external && command = publish. Feed (or Project/Feed if the feed was created in a project). 
    #packagePublishExternal: # string. Required when internalOrExternalPublish = external && command = publish. Package name. 
    #versionOption: 'patch' # 'major' | 'minor' | 'patch' | 'custom'. Alias: versionPublishSelector. Required when command = publish. Version. Default: patch.
    #versionPublish: # string. Required when versionPublishSelector = custom && command = publish. Custom version. 
    #packagePublishDescription: # string. Optional. Use when command = publish. Description. 
  # Advanced
    #publishPackageMetadata: true # boolean. Optional. Use when command = publish && internalOrExternalPublish = internal. Publish pipeline metadata. Default: true.
    #verbosity: 'None' # 'None' | 'Trace' | 'Debug' | 'Information' | 'Warning' | 'Error' | 'Critical'. Verbosity. Default: None.
  # Output
    #publishedPackageVar: # string. Optional. Use when command = publish. Package Output Variable.
# Universal packages v0
# Download or publish Universal Packages.
- task: UniversalPackages@0
  inputs:
    command: 'download' # 'download' | 'publish'. Required. Command. Default: download.
    downloadDirectory: '$(System.DefaultWorkingDirectory)' # string. Required when command = download. Destination directory. Default: $(System.DefaultWorkingDirectory).
    #publishDirectory: '$(Build.ArtifactStagingDirectory)' # string. Required when command = publish. Path to file(s) to publish. Default: $(Build.ArtifactStagingDirectory).
  # Feed & package details
    feedsToUse: 'internal' # 'internal' | 'external'. Alias: internalOrExternalDownload. Required when command = download. Feed location. Default: internal.
    #externalFeedCredentials: # string. Alias: externalEndpoint. Optional. Use when internalOrExternalDownload = external && command = download. organization/collection connection. 
    #vstsFeed: # string. Alias: feedListDownload. Required when internalOrExternalDownload = internal && command = download. Feed. 
    #vstsFeedPackage: # string. Alias: packageListDownload. Required when internalOrExternalDownload = internal && command = download. Package name. 
    #vstsPackageVersion: # string. Alias: versionListDownload. Required when internalOrExternalDownload = internal && command = download. Version. 
    #feedDownloadExternal: # string. Required when internalOrExternalDownload = external && command = download. Feed. 
    #packageDownloadExternal: # string. Required when internalOrExternalDownload = external && command = download. Package name. 
    #versionDownloadExternal: # string. Required when internalOrExternalDownload = external && command = download. Version. 
  # Feed & package details
    #feedsToUsePublish: 'internal' # 'internal' | 'external'. Alias: internalOrExternalPublish. Required when command = publish. Feed location. Default: internal.
    #publishFeedCredentials: # string. Alias: externalEndpoints. Required when internalOrExternalPublish = external && command = publish. organization/collection connection. 
    #vstsFeedPublish: # string. Alias: feedListPublish. Required when internalOrExternalPublish = internal && command = publish. Destination Feed. 
    #vstsFeedPackagePublish: # string. Alias: packageListPublish. Required when internalOrExternalPublish = internal && command = publish. Package name. 
    #feedPublishExternal: # string. Required when internalOrExternalPublish = external && command = publish. Feed. 
    #packagePublishExternal: # string. Required when internalOrExternalPublish = external && command = publish. Package name. 
    #versionOption: 'patch' # 'major' | 'minor' | 'patch' | 'custom'. Alias: versionPublishSelector. Required when command = publish. Version. Default: patch.
    #versionPublish: # string. Required when versionPublishSelector = custom && command = publish. Custom version. 
    #packagePublishDescription: # string. Optional. Use when command = publish. Description. 
  # Advanced
    #publishPackageMetadata: true # boolean. Optional. Use when command = publish && internalOrExternalPublish = internal. Publish pipeline metadata. Default: true.
    #verbosity: 'None' # 'None' | 'Trace' | 'Debug' | 'Information' | 'Warning' | 'Error' | 'Critical'. Verbosity. Default: None.
  # Output
    #publishedPackageVar: # string. Optional. Use when command = publish. Package Output Variable.
# Universal Packages v0
# Download or publish Universal Packages.
- task: UniversalPackages@0
  inputs:
    command: 'download' # 'download' | 'publish'. Required. Command. Default: download.
    downloadDirectory: '$(System.DefaultWorkingDirectory)' # string. Required when command = download. Destination directory. Default: $(System.DefaultWorkingDirectory).
    #publishDirectory: '$(Build.ArtifactStagingDirectory)' # string. Required when command = publish. Path to file(s) to publish. Default: $(Build.ArtifactStagingDirectory).
  # Feed & package details
    feedsToUse: 'internal' # 'internal' | 'external'. Alias: internalOrExternalDownload. Required when command = download. Feed location. Default: internal.
    #externalFeedCredentials: # string. Alias: externalEndpoint. Optional. Use when internalOrExternalDownload = external && command = download. Account/collection connection. 
    #vstsFeed: # string. Alias: feedListDownload. Required when internalOrExternalDownload = internal && command = download. Feed. 
    #vstsFeedPackage: # string. Alias: packageListDownload. Required when internalOrExternalDownload = internal && command = download. Package name. 
    #vstsPackageVersion: # string. Alias: versionListDownload. Required when internalOrExternalDownload = internal && command = download. Version. 
    #feedDownloadExternal: # string. Required when internalOrExternalDownload = external && command = download. Feed. 
    #packageDownloadExternal: # string. Required when internalOrExternalDownload = external && command = download. Package name. 
    #versionDownloadExternal: # string. Required when internalOrExternalDownload = external && command = download. Version. 
  # Feed & package details
    #feedsToUsePublish: 'internal' # 'internal' | 'external'. Alias: internalOrExternalPublish. Required when command = publish. Feed location. Default: internal.
    #publishFeedCredentials: # string. Alias: externalEndpoints. Required when internalOrExternalPublish = external && command = publish. Account/collection connection. 
    #vstsFeedPublish: # string. Alias: feedListPublish. Required when internalOrExternalPublish = internal && command = publish. Destination Feed. 
    #vstsFeedPackagePublish: # string. Alias: packageListPublish. Required when internalOrExternalPublish = internal && command = publish. Package name. 
    #feedPublishExternal: # string. Required when internalOrExternalPublish = external && command = publish. Feed. 
    #packagePublishExternal: # string. Required when internalOrExternalPublish = external && command = publish. Package name. 
    #versionOption: 'patch' # 'major' | 'minor' | 'patch' | 'custom'. Alias: versionPublishSelector. Required when command = publish. Version. Default: patch.
    #versionPublish: # string. Required when versionPublishSelector = custom && command = publish. Custom version. 
    #packagePublishDescription: # string. Optional. Use when command = publish. Description. 
  # Advanced
    #verbosity: 'None' # 'None' | 'Trace' | 'Debug' | 'Information' | 'Warning' | 'Error' | 'Critical'. Verbosity. Default: None.

Входы

Команда command -
string. Обязательно. Допустимые значения: download, publish. Значение по умолчанию: download.

Указывает команду универсального пакета для выполнения.


каталога назначения
string. Требуется, если command = download. Значение по умолчанию: $(System.DefaultWorkingDirectory).

Указывает путь к папке, в которой задача загружает содержимое пакета.


расположения веб-канала
Псевдоним ввода: internalOrExternalDownload. string. Требуется, если command = download. Допустимые значения: internal (эта организация или коллекция), external (другая организация или коллекция). Значение по умолчанию: internal.

Указывает веб-канал из этой коллекции или другой коллекции в Azure Artifacts.


расположения веб-канала
Псевдоним ввода: internalOrExternalDownload. string. Требуется, если command = download. Допустимые значения: internal (эта учетная запись или коллекция), external (другая учетная запись или коллекция). Значение по умолчанию: internal.

Указывает веб-канал из этой коллекции или другой коллекции в Azure Artifacts.


подключения организации или коллекции
Псевдоним ввода: externalEndpoint. string. Необязательный. Используется при internalOrExternalDownload = external && command = download.

Указывает учетные данные, используемые для внешних реестров, расположенных в выбранной NuGet.config. Для веб-каналов в этой организации или коллекции оставьте это пустым; Учетные данные сборки используются автоматически.


externalFeedCredentials - подключение к учетной записи и коллекции
Псевдоним ввода: externalEndpoint. string. Необязательный. Используется при internalOrExternalDownload = external && command = download.

Указывает учетные данные, используемые для внешних реестров, расположенных в выбранной NuGet.config. Для веб-каналов в этой организации или коллекции оставьте это пустым; Учетные данные сборки используются автоматически.


веб-канала
Псевдоним ввода: feedListDownload. string. Требуется, если internalOrExternalDownload = internal && command = download.

Включает выбранный веб-канал. Чтобы выбрать веб-канал, необходимо установить и лицензировать Azure Artifacts. Указывает FeedName для веб-канала, ограниченного организацией, и projectName/FeedName или ProjectID/FeedID для веб-канала с областью проекта.


vstsFeedPackage - имя пакета
Псевдоним ввода: packageListDownload. string. Требуется, если internalOrExternalDownload = internal && command = download.

Указывает имя пакета для загрузки задачи.


vstsPackageVersion - версии
Псевдоним ввода: versionListDownload. string. Требуется, если internalOrExternalDownload = internal && command = download.

Указывает версию пакета или использует переменную, содержащую версию для скачивания. Эта запись также может быть подстановочным выражением, например *, чтобы получить самую высокую версию. Примеры: 1.* получает самую высокую версию с основной версией 1, а 1.2.* получает самый высокий выпуск исправлений с основной версией 1 и дополнительной версией 2.


feedDownloadExternal - веб-канал (или project/Feed, если веб-канал был создан в проекте)
string. Требуется, если internalOrExternalDownload = external && command = download.

Указывает веб-канал в другой организации или коллекции.

Для веб-каналов с областью действия проекта значение должно быть Project/Feed, где Project — это имя или идентификатор проекта, а Feed — имя или идентификатор веб-канала. Для веб-каналов с областью организации значение должно быть только именем канала.


веб-канала
string. Требуется, если internalOrExternalDownload = external && command = download.

Указывает веб-канал в другой организации или коллекции.

Для веб-каналов с областью действия проекта значение должно быть Project/Feed, где Project — это имя или идентификатор проекта, а Feed — имя или идентификатор веб-канала. Для веб-каналов с областью организации значение должно быть только именем канала.


packageDownloadExternal - имя пакета
string. Требуется, если internalOrExternalDownload = external && command = download.

Указывает имя пакета для скачивания.


versionDownloadExternal - версии
string. Требуется, если internalOrExternalDownload = external && command = download.

Указывает версию пакета или использует переменную, содержащую версию для скачивания. Эта запись также может быть подстановочным выражением, например *, чтобы получить самую высокую версию. Примеры: 1.* получает самую высокую версию с основной версией 1, а 1.2.* получает самый высокий выпуск исправлений с основной версией 1 и дополнительной версией 2. Шаблоны подстановочных знаков не поддерживаются с пакетами предварительной версии.


publishDirectory - Путь к файлам для публикации
string. Требуется, если command = publish. Значение по умолчанию: $(Build.ArtifactStagingDirectory).

Указывает путь к списку опубликованных файлов.


расположения веб-канала
Псевдоним ввода: internalOrExternalPublish. string. Требуется, если command = publish. Допустимые значения: internal (эта организация или коллекция), external (другая организация или коллекция). Значение по умолчанию: internal.

Указывает веб-канал из этой коллекции или другой коллекции в Azure Artifacts.


расположения веб-канала
Псевдоним ввода: internalOrExternalPublish. string. Требуется, если command = publish. Допустимые значения: internal (эта учетная запись или коллекция), external (другая учетная запись или коллекция). Значение по умолчанию: internal.

Указывает веб-канал из этой коллекции или другой коллекции в Azure Artifacts.


подключения организации или коллекции
Псевдоним ввода: externalEndpoints. string. Требуется, если internalOrExternalPublish = external && command = publish.

Указывает учетные данные, используемые для внешних веб-каналов.


publishFeedCredentials - подключение к учетной записи и коллекции
Псевдоним ввода: externalEndpoints. string. Требуется, если internalOrExternalPublish = external && command = publish.

Указывает учетные данные, используемые для внешних веб-каналов.


целевого веб-канала
Псевдоним ввода: feedListPublish. string. Требуется, если internalOrExternalPublish = internal && command = publish.

Указывает проект и идентификатор GUID веб-канала для публикации.


publishPackageMetadata - публикации метаданных конвейера
boolean. Необязательный. Используется при command = publish && internalOrExternalPublish = internal. Значение по умолчанию: true.

Связывает метаданные этого конвейера сборки и выпуска (например, сведения о запуске # и исходном коде) с пакетом.


vstsFeedPackagePublish - имя пакета
Псевдоним ввода: packageListPublish. string. Требуется, если internalOrExternalPublish = internal && command = publish.

Указывает идентификатор пакета для публикации или создания нового идентификатора пакета, если вы еще не опубликовали версию этого пакета. Имена пакетов должны быть нижним регистром и могут использовать только буквы, цифры и дефисы (-).


feedPublishExternal - веб-канал (или project/Feed, если веб-канал был создан в проекте)
string. Требуется, если internalOrExternalPublish = external && command = publish.

Указывает имя внешнего веб-канала для публикации.

Если веб-канал был создан в проекте, значение должно быть Project/Feed, где Project является именем или идентификатором проекта, а Feed — это имя веб-канала. Если веб-канал не был создан в проекте, значение должно быть только именем канала.


веб-канала
string. Требуется, если internalOrExternalPublish = external && command = publish.

Указывает имя внешнего веб-канала для публикации.

Если веб-канал был создан в проекте, значение должно быть Project/Feed, где Project является именем или идентификатором проекта, а Feed — это имя веб-канала. Если веб-канал не был создан в проекте, значение должно быть только именем канала.


packagePublishExternal - имя пакета
string. Требуется, если internalOrExternalPublish = external && command = publish.

Указывает имя пакета при публикации во внешнем веб-канале.


versionOption - версии
Псевдоним ввода: versionPublishSelector. string. Требуется, если command = publish. Допустимые значения: major (следующий основной), minor (следующий дополнительный), patch (следующее исправление), custom. Значение по умолчанию: patch.

Задает стратегию увеличения версии. Значение custom для ввода версии пакета вручную. Для новых пакетов первая версия будет 1.0.0, если указать major, 0.1.0, если указать minorили 0.0.1, если указать patch. Дополнительные сведения см. в спецификации семантического управления версиями .


versionPublish - пользовательской версии
string. Требуется, если versionPublishSelector = custom && command = publish.

Задает настраиваемую схему версии для пакета.


описания
string. Необязательный. Используется при command = publish.

Указывает описание содержимого пакета и/или изменения, внесенные в эту версию пакета.


verbosity - детализации
string. Допустимые значения: None, Trace, Debug, Information, Warning, Error, Critical. Значение по умолчанию: None.

Указывает объем сведений, отображаемых в выходных данных.


verbosity - детализации
string. Допустимые значения: None, Trace, Debug, Information, Warning, Error, Critical (Citical). Значение по умолчанию: None.

Указывает объем сведений, отображаемых в выходных данных.


выходной переменной пакета
string. Необязательный. Используется при command = publish.

Указывает имя переменной, которая будет содержать опубликованное имя пакета и версию.


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

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

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

Никакой.

Замечания

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

Мой конвейер должен получить доступ к веб-каналу в другом проекте

Если конвейер выполняется в другом проекте, отличном от проекта, на котором размещен веб-канал, необходимо настроить другой проект, чтобы предоставить доступ на чтение и запись службе сборки. Дополнительные сведения см. в разрешениях пакета в Azure Pipelines.

Примеры

Самый простой способ начать работу с задачей универсального пакета — использовать редактор задач Pipelines для создания YAML. Затем можно скопировать созданный код в файл azure-pipelines.yml проекта. В этом примере показано, как быстро создать YAML с помощью конвейера, который создает прогрессивное веб-приложение GatsbyJS (PWA).

Универсальные пакеты — это удобный способ инкапсулировать и версию веб-приложения. Упаковка веб-приложения в универсальный пакет обеспечивает быстрый откат к определенной версии сайта и устраняет необходимость сборки сайта в конвейере развертывания.

В этом примере конвейера показано, как получить инструмент из веб-канала в проекте. Задача универсального пакета используется для скачивания средства, запуска сборки и повторного использования задачи универсального пакета для публикации всего скомпилированного PWA GatsbyJS в веб-канал в качестве версии универсального пакета.

снимок экрана примера проекта.

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

Вторая задача в примере проекта использует задачу универсального пакета для получения средства, imagemagick, из веб-канала, который находится в другом проекте в той же организации. Средство, imagemagick, требуется для последующего шага сборки для изменения размера изображений.

  1. Добавьте задачу универсального пакета, щелкнув значок плюса, введя "универсальную" в поле поиска и нажав кнопку "Добавить", чтобы добавить задачу в конвейер.

    снимок экрана: добавление задачи универсального пакета.

  2. Щелкните только что добавленную задачу универсального пакета и команду , чтобы Download.

  3. Выберите каталог назначения, который будет использоваться для скачивания средства.

  4. Выберите исходный веб-канал, содержащий средство, задайте имя пакета и выберите версию средства imagemagick из исходноговеб-канала .

    снимок экрана: настройка задачи универсального пакета для скачивания.

  5. После завершения полей щелкните Просмотреть yamL, чтобы просмотреть созданный YAML.

    снимок экрана: просмотр YAML.

  6. Построитель задач универсального пакета создает упрощенный YAML, содержащий значения, отличные от значений по умолчанию. Скопируйте созданный YAML в файл в корневом каталоге репозитория Git проекта.

    # Download Universal Package
    steps:
    - task: UniversalPackages@0
      displayName: 'Universal download'
      inputs:
        downloadDirectory: Application
        vstsFeed: '00000000-0000-0000-0000-000000000000/00000000-0000-0000-0000-000000000001'
        vstsFeedPackage: imagemagick
        vstsPackageVersion: 1.0.0
    

Публикация пакета с задачей универсального пакета

Последний шаг в этом примере конвейера использует задачу универсального пакета для отправки готового к работе PWA Gatsby, созданного на Run gatsby build шаге в веб-канал в качестве версии универсального пакета. После входа в веб-канал у вас есть постоянная копия полного сайта, который можно развернуть в поставщике услуг размещения и начать работу с gatsby serve.

  1. Добавьте еще одну задачу универсального пакета в конец конвейера, щелкнув значок плюса, введя "универсальный" в поле поиска и нажав кнопку "Добавить", чтобы добавить задачу в конвейер. Эта задача собирает все готовые к работе ресурсы, созданные на этапе Run gatsby build, создайте версию универсального пакета и опубликуете пакет в веб-канале.

    снимок экрана: задание задачи универсального пакета для публикации.

  2. Задайте команды значение .

  3. Задайте для путь к файлам, чтобы опубликовать в каталоге, содержащем package.jsonпроекта GatsbyJS.

  4. Выберите целевой веб-канал, имя пакета и задайте стратегию управления версиями.

    снимок экрана: настройка задачи универсального пакета для публикации.

  5. После выполнения обязательных полей щелкните ПросмотретьYAML.

  6. Скопируйте полученный YAML в файл azure-pipelines.yml, как и раньше. YamL для этого примера проекта отображается ниже.

    # Publish Universal Package
    steps:
    - task: UniversalPackages@0
      displayName: 'Universal publish'
      inputs:
        command: publish
        publishDirectory: Application
        vstsFeedPublish: '00000000-0000-0000-0000-000000000000/00000000-0000-0000-0000-000000000002' # You can also use '<projectName>/<feedName>' instead of the GUIDs
        vstsFeedPackagePublish: mygatsbysite
        packagePublishDescription: 'A test package'
    

В этом примере показано, как использовать построитель задач Pipelines для быстрого создания YAML для задачи универсального пакета, которая затем может быть помещена в файл azure-pipelines.yml. Построитель задач универсального пакета поддерживает все расширенные конфигурации, которые можно создать с помощью аргументов универсальных пакетов задач.

Заметка

Публикация пакета непосредственно в представлении не поддерживается в Azure Artifacts. Сначала необходимо опубликовать пакет в веб-канале, а затем повысить его до представления.

Требования

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