Публикация и скачивание пакетов NuGet с помощью артефактов Azure

Сервисы Azure DevOps | Azure DevOps Server | Azure DevOps Server 2022

Артефакты Azure позволяют разработчикам публиковать и скачивать пакеты NuGet из каналов распространения или общедоступных реестров. Каналы могут быть либо частными, позволяя делиться пакетами с определенными пользователями, либо публичными, делая ваши пакеты доступными всем в интернете.

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

Предварительные условия

Продукт Требования
Azure DevOps Организация Azure DevOps.
— проект Azure DevOps .
— Скачивание и установка nuget.exe версии 4.8.0.5385 или более поздней версии. Мы рекомендуем NuGet версии 5.5.x или более поздней, которая включает важные исправления ошибок, связанных с отменой операций и тайм-аутами.

Настройка поставщика учетных данных Azure Artifacts

Поставщик учетных данных Azure Artifacts обеспечивает безопасную аутентификацию в каналах Azure Artifacts. Чтобы использовать его с nuget.exe, необходимо сначала добавить его в путь поиска плагинов NuGet. Дополнительные сведения см. в разделе "Установка и обнаружение подключаемых модулей". После добавления подключаемого модуля выполните действия по установке операционной системы:

Используйте один из следующих методов для установки поставщика учетных данных Azure Artifacts:

Установка вручную

  1. Скачайте последний выпуск Microsoft.NetFx48.NuGet.CredentialProvider.zip.

  2. Извлеките ZIP-файл.

  3. Скопируйте папку netfx из распакованного архива в %UserProfile%/.nuget/plugins/. Папка netfx необходима для совместимости nuget.exe.

Установка с помощью вспомогательного скрипта

Кроме того, можно использовать скрипт автоматического вспомогательного средства для упрощенной установки. Убедитесь, что у вас есть PowerShell 5.1 или более поздней версии, а затем выполните следующую команду:

iex "& { $(irm https://aka.ms/install-artifacts-credprovider.ps1) } -AddNetfx"

Дополнительные сведения см. в репозитории Azure Artifacts Credential Provider.

Создайте ленту

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

  2. Выберите Артефакты, а затем выберите Создать ленту.

  3. Укажите имя для вашего веб-канала, выберите параметр Видимость, который определяет, кто может просматривать ваши пакеты; отметьте Включить пакеты из общих общедоступных источников, если вы хотите включить пакеты из источников, таких как nuget.org или npmjs.com; и для Областьрешите, должен ли канал быть ограничен вашим проектом или всей организацией.

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

    Снимок экрана, показывающий параметры для создания нового фида в Azure DevOps Services.

  1. Войдите на сервер Azure DevOps и перейдите в проект.

  2. Выберите Артефакты, а затем выберите Создать ленту.

  3. Укажите имя для вашего веб-канала, выберите параметр Видимость, который определяет, кто может просматривать ваши пакеты; отметьте Включить пакеты из общих общедоступных источников, если вы хотите включить пакеты из источников, таких как nuget.org или npmjs.com; и для Областьрешите, должен ли канал быть ограничен вашим проектом или всей организацией.

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

    Снимок экрана, показывающий выбор для создания новой ленты в Azure DevOps 2022.

Примечание.

По умолчанию служба сборки для проекта (например, projectName Build Service (orgName)) назначает роль веб-канала и средства чтения upstream (Collaborator) при создании нового веб-канала.

Подключение к фиду

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

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

  3. Выберите Подключиться к каналу, а затем выберите NuGet.exe на панели навигации слева. Если вы впервые используете Azure Artifacts с Nuget.exe, убедитесь, что установлены необходимые компоненты.

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

    Снимок экрана: настройка проекта и подключение к веб-каналу в Azure DevOps Services.

  1. Войдите на сервер Azure DevOps и перейдите в проект.

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

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

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

    Снимок экрана, показывающий, как настроить ваш проект и подключиться к каналу в Azure DevOps Server 2020 и 2022.

Публикация пакетов в веб-канале

Примечание.

Чтобы опубликовать пакеты в канале, необходимо быть издателем канала (контрибьютором) или выше. Дополнительные сведения см. в статье "Управление разрешениями ".

Чтобы опубликовать пакет в вашу ленту, выполните следующую команду. Параметр ApiKey является обязательным, но в качестве значения можно использовать любую произвольную строку.

nuget.exe push -Source <SOURCE_NAME> -ApiKey key <PACKAGE_PATH>

Примеры

  • Лента, ограниченная рамками проекта:

    nuget.exe push -Source https://pkgs.dev.azure.com/myOrganization/MyProject/_packaging/MyFeed/nuget/v3/index.json -ApiKey AZ release/myDemoPackage.1.0.0.nupkg
    
  • Лента, охватывающая всю организацию:

    nuget.exe push -Source https://pkgs.dev.azure.com/myOrganization/_packaging/myFeed/nuget/v3/index.json -ApiKey AZ release/myDemoPackage.1.0.0.nupkg
    

Примечание.

Это ApiKey необходимо, но при публикации в каналы Azure Artifacts можно использовать любое произвольное значение.

Скачивание пакетов из вашего канала

Чтобы восстановить пакеты из фида, выполните следующую команду в каталоге проекта:

nuget.exe restore

Примечание.

Поиск пакетов в вышестоящих источниках с помощью обозревателя пакетов NuGet не поддерживается.