Публикация и скачивание универсальных пакетов в Артефактах Azure

Azure DevOps Services

Универсальные пакеты позволяют разработчикам хранить широкий спектр типов пакетов за пределами традиционных пакетов, таких как NuGet, npm, пакеты Python и т. д. С помощью Azure CLI можно публиковать и скачивать универсальные пакеты непосредственно из командной строки. Хотя размер опубликованных пакетов может отличаться, достигая до 4 ТБ, они всегда должны поддерживать важное требование включения имени и номера версии. В этой статье описаны действия по публикации и скачиванию универсальных пакетов из веб-канала артефактов Azure.

Необходимые компоненты

Создание веб-канала

Если у вас уже есть веб-канал, вы можете перейти к следующему разделу. В противном случае выполните приведенные ниже действия, чтобы создать новый веб-канал Артефактов Azure:

  1. Войдите в организацию Azure DevOps и перейдите к проекту.

  2. Выберите артефакты и нажмите кнопку "Создать веб-канал".

  3. Укажите описательное имя веб-канала и задайте его видимость (который может просматривать пакеты в веб-канале). Определите область веб-канала и выберите источники upstream проверка box, если требуется включить пакеты из общедоступных реестров.

  4. После завершения работы выберите Создать.

    Снимок экрана: создание веб-канала.

Примечание.

Недавно созданные веб-каналы определяют роль службы сборки проекта в качестве веб-канала и средства чтения upstream (совместной работы) по умолчанию.

Установка расширения Azure DevOps

Использование интерфейса командной строки помогает упростить задачи. Прежде чем продолжить, убедитесь, что вы установили Azure CLI (версия 2.10.1 или более поздней версии). Кроме того, необходимо установить расширение Azure DevOps для управления службами Azure DevOps из командной строки.

  1. Выполните следующую команду, чтобы установить расширение Azure DevOps:

    az extension add --name azure-devops
    
  2. Если вы уже установили расширение Azure DevOps и хотите обновить его до последней версии, выполните следующую команду:

    az extension update --name azure-devops
    

Подключиться к веб-каналу

  1. Войдите в организацию Azure DevOps и перейдите к проекту.

  2. Выберите артефакты и выберите веб-канал в раскрывающемся меню.

  3. Выберите Подключение для канала и выберите универсальные пакеты в области навигации слева.

  4. Следуйте инструкциям в разделе "Настройка проекта", чтобы подключиться к веб-каналу.

  1. Выполните следующую команду, чтобы войти в Azure CLI:

    az login
    
  2. Выполните следующую команду, чтобы задать проект и организацию в качестве конфигурации интерфейса командной строки по умолчанию:

    az devops configure --defaults project=<YOUR_PROJECT_NAME> organization=https://dev.azure.com/<YOUR_ORGANIZATION_NAME> 
    

Публикация универсальных пакетов

Чтобы опубликовать универсальный пакет в веб-канале, необходимо указать имя пакета и номер версии.

Имя пакета должно находиться в нижнем регистре, начинать и заканчиваться буквами или цифрами, а также содержать только буквы, цифры и неконсекутивные дефисы, символы подчеркивания и периоды. Версия пакета также должна быть в нижнем регистре и не должна включать метаданные сборки (+ суффикс). Дополнительные сведения см . в семантическом управления версиями .

  1. Выполните следующую команду, чтобы опубликовать универсальный пакет в веб-канале:

    • Веб-канал область организации:

      az artifacts universal publish --organization https://dev.azure.com/<YOUR_ORGANIZATION> --feed <FEED_NAME> --name <PACKAGE_NAME> --version <PACKAGE_VERSION> --path <PACKAGE_DIRECTORY> --description <PACKAGE_DESCRIPTION>
      
    • Веб-канал Project-область d:

      az artifacts universal publish --organization https://dev.azure.com/<YOUR_ORGANIZATION> --project <PROJECT_NAME> --scope project --feed <FEED_NAME> --name <PACKAGE_NAME> --version <PACKAGE_VERSION> --path <PACKAGE_DIRECTORY> --description <PACKAGE_DESCRIPTION>
      

Примечание.

Если ваша организация использует брандмауэр или прокси-сервер, убедитесь, что вы разрешаете URL-адреса и IP-адреса домена Azure Artifacts.

Просмотр опубликованных пакетов

  1. Войдите в организацию Azure DevOps и перейдите к проекту.

  2. Выберите артефакты и выберите веб-канал в раскрывающемся меню. После успешного завершения процесса публикации пакет должен быть доступен в веб-канале.

    Снимок экрана: недавно опубликованный универсальный пакет.

Скачивание универсальных пакетов

Выполните следующую команду, чтобы скачать конкретный универсальный пакет из веб-канала с помощью Azure CLI:

  • Веб-канал область организации:

    az artifacts universal download --organization https://dev.azure.com/<YOUR_ORGANIZATION_NAME> --feed <FEED_NAME> --name <PACKAGE_NAME> --version <PACKAGE_VERSION> --path <DOWNLOAD_PATH>
    
  • Веб-канал Project-область d:

    az artifacts universal download --organization https://dev.azure.com/<YOUR_ORGANIZATION_NAME> --project <PROJECT_NAME> --scope project --feed <FEED_NAME> --name <PACKAGE_NAME> --version <PACKAGE_VERSION> --path <DOWNLOAD_PATH>
    

Загрузка определенных файлов

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

  • Веб-канал область организации:

    az artifacts universal download --organization https://dev.azure.com/<YOUR_ORGANIZATION_NAME> --feed <FEED_NAME> --name <PACKAGE_NAME> --version <PACKAGE_VERSION> --path <DOWNLOAD_PATH> --file-filter <MATCH_PATTERN>
    
  • Веб-канал Project-область d:

    az artifacts universal download --organization https://dev.azure.com/<YOUR_ORGANIZATION_NAME> --project <PROJECT_NAME> --scope project --feed <FEED_NAME> --name <PACKAGE_NAME> --version <PACKAGE_VERSION> --path <DOWNLOAD_PATH> --file-filter <MATCH_PATTERN>
    

Например, использование журналов --file-filters/.log будет соответствовать любому файлу с именем файла, содержащим "журналы" и заканчивая расширением ".log" (например, build_logs.log).

Скачать последнюю версию

Для скачивания последней версии универсальных пакетов можно использовать дикие карта*.

Примеры:

  • --version '*': скачайте последнюю версию.

  • --version '1.*': скачайте последнюю версию с основным 1.

  • --version '1.2.*': скачайте последний выпуск исправления с основными 1 и дополнительными 2.

Примечание.

Шаблоны wild карта не поддерживаются в версиях предварительной версии (пакеты с дефисом в номере версии).