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


Используйте пакеты из галереи NuGet

Azure DevOps Services | Azure DevOps Server 2022 — Azure DevOps Server 2019

С помощью вышестоящих источников артефактов Azure разработчики могут использовать пакеты из общедоступных реестров, таких как nuget.org и npmjs.com. В этой статье описан процесс настройки проекта и использования командной строки для эффективного использования пакетов NuGet из коллекции NuGet. В этой статье вы узнаете, как выполнять следующие задачи.

  • Включите апстрим-источники для вашего канала
  • Добавить NuGet Gallery в качестве вышестоящего источника
  • Подключиться к вашей ленте новостей
  • Установка пакетов из nuget.org

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

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

  • Канал артефактов Azure.

  • Скачайте NuGet.

  • Скачайте и установите Azure Artifacts Credential Provider.

Включите вышестоящие источники в вашем фиде

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

  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.

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

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

Примечание.

По умолчанию для только что созданных веб-каналов значение параметра Служба сборки установлено на Канал и Чтение Источника Восходящего Потока (Сотрудник).

Если вы установили флажок "Верхний источник" при создании фида, Галерея NuGet должна была быть добавлена автоматически. Если нет, добавьте его вручную, выполнив следующие действия:

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

  2. Выберите артефакты, а затем выберите свою ленту.

  3. Нажмите кнопку Значок шестеренки, чтобы перейти к настройкам ленты.

  4. Выберите "Вышестоящий источник", а затем нажмите кнопку "Добавить вверх" , чтобы добавить новый вышестоящий источник.

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

  6. Нажмите кнопку "Добавить ", а затем нажмите кнопку "Сохранить еще раз" в правом верхнем углу, чтобы сохранить изменения.

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

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

  3. Нажмите значок шестеренки, чтобы перейти к настройкам ленты.

  4. Выберите "Вышестоящие источники", а затем "Добавить вышестоящий".

  5. Выберите публичный источник, а затем выберите Галерея NuGet в раскрывающемся меню.

  6. Нажмите кнопку "Сохранить " после завершения и нажмите кнопку "Сохранить еще раз" в правом верхнем углу, чтобы сохранить изменения.

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

  2. Выберите артефакты, а затем выберите свою ленту.

  3. Нажмите кнопку значок шестеренки, чтобы перейти к настройкам ленты.

  4. Выберите "Вышестоящий источник", а затем выберите "Добавить вышестоящий источник".

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

  6. Нажмите кнопку "Добавить" после завершения.

Подключиться к ленте

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

  2. Выберите артефакты и выберите вашу ленту.

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

  4. Добавьте файл nuget.config в ту же папку, что и ваш файл .csproj или .sln. Вставьте предоставленный фрагмент XML в файл. Если вы используете приведенные ниже примеры, убедитесь, что вы заменяете заполнители на соответствующие значения для вашего сценария.

    • Лента, охватывающая всю организацию:

      <?xml version="1.0" encoding="utf-8"?>
      <configuration>
        <packageSources>
          <clear />
          <add key="<SOURCE_NAME>" value="https://pkgs.dev.azure.com/<ORGANIZATION_NAME>/_packaging/<FEED_NAME>/nuget/v3/index.json" />
        </packageSources>
      </configuration>
      
    • Канал в рамках проекта:

      <?xml version="1.0" encoding="utf-8"?>
      <configuration>
        <packageSources>
          <clear />
          <add key="<SOURCE_NAME>" value="https://pkgs.dev.azure.com/<ORGANIZATION_NAME>/<PROJECT_NAME>/_packaging/<FEED_NAME>/nuget/v3/index.json" />
        </packageSources>
      </configuration>
      
  1. Войдите на сервер Azure DevOps и перейдите к проекту.

  2. Выберите артефакты, а затем выберите свою ленту.

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

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

Теперь, когда наш проект настроен для аутентификации с нашим фидом, мы можем перейти к установке пакетов из основного репозитория NuGet Gallery. В этом примере мы установим библиотеку для ведения диагностических журналов Serilog.

  1. Перейдите в коллекцию NuGet по адресу https://www.nuget.org/.

  2. Найдите пакет Serilog и выберите его, чтобы перейти на страницу сведений.

  3. Выберите вкладку диспетчер пакетов и скопируйте команду. В нашем примере команда выглядит следующим образом:

    NuGet\Install-Package Serilog -Version 3.1.2-dev-02097
    
  4. Откройте проект в Visual Studio, а затем выберите Инструменты>Диспетчер пакетов NuGet>Консоль диспетчера пакетов, чтобы открыть окно консоли.

  5. Вставьте команду в окно консоли диспетчера пакетов, и нажмите Enter, чтобы установить пакет.

Примечание.

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

Просмотр сохраненных пакетов

  1. Войдите в организацию Azure DevOps и перейдите к проекту.
  1. Войдите на сервер Azure DevOps и перейдите к проекту.
  1. Выберите Артефакты, а затем выберите ваш канал в раскрывающемся меню.

  2. Выберите источник NuGet Gallery из раскрывающегося меню, чтобы отфильтровать пакеты из этого верхнего уровня.

  3. Пакет Serilog, установленный на предыдущем шаге, теперь доступен в нашем канале распространения. Артефакты Azure автоматически сохранили копию в нашей ленте при выполнении команды установки.

    Снимок экрана: пакет, сохраненный из исходного источника.