Восстановление пакетов NuGet с помощью Azure Pipelines (YAML/Classic)

Azure DevOps Services | Azure DevOps Server | Azure DevOps Server 2022

С помощью восстановления пакетов NuGet можно установить все зависимости проекта без необходимости хранить их в системе управления версиями. Это позволяет поддерживать более упорядоченную среду разработки и меньший размер репозитория. Пакеты NuGet можно восстановить с помощью задачи восстановления NuGet, интерфейса командной строки NuGet или интерфейса командной строки .NET Core. В этой статье вы узнаете, как восстановить пакеты NuGet с помощью классических и YAML Pipelines.

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

Примечание.

Если вы используете Ubuntu 24.04 или более поздней версии, необходимо использовать NuGetAuthenticate задачу с .NET CLI вместо nuget.exe. Для получения подробностей см. поддержку новых размещённых образов Ubuntu в и.

Восстановление пакетов NuGet из веб-канала в той же организации

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

  2. Выберите конвейеры и выберите определение конвейера.

  3. Нажмите кнопку "Изменить", а затем добавьте следующий фрагмент кода в конвейер YAML.

    steps:
    - task: NuGetAuthenticate@1
    
    - task: NuGetToolInstaller@1
      inputs:
        versionSpec: '*'
        checkLatest: true
    
    - script: nuget restore <SOLUTION_PATH>    ## If you're using Ubuntu 24.04 or later, use the following command instead: dotnet restore <SOLUTION_PATH>
    

Примечание.

Убедитесь, что в канале включена вышестоящая галерея NuGet. Дополнительные сведения см. в разделе "Включение исходных источников" для существующего канала.

Восстановление пакетов NuGet из веб-канала в другой организации

Чтобы восстановить пакеты NuGet из канала в другой организации Azure DevOps, сначала необходимо создать личный маркер доступа, а затем использовать его для настройки подключения NuGet.

Создайте личный токен доступа

  1. Перейдите в организацию Azure DevOps, затем выберите Настройки пользователя>Личные маркеры доступа.

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

  2. Создайте новый токен личного доступа со следующими правами: Упаковка* >Чтение. Скопируйте PAT, так как он потребуется вам в следующем разделе.

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

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

Создание подключения службы

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

  2. Перейдите к параметрам проекта и подключениям службы.

  3. Выберите новое подключение к службе, выберите NuGet и нажмите кнопку "Далее".

  4. Выберите внешний сервер Azure DevOps в качестве метода аутентификации и введите целевой URL канала. Вставьте созданный ранее личный токен доступа, укажите имя подключения к службе и отметьте опцию Предоставить разрешение на доступ ко всем конвейерам, если это применимо к вашему сценарию.

  5. Выберите Сохранить, когда вы закончите.

    Снимок экрана: создание подключения к службе NuGet.

Восстановление пакетов

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

  2. Выберите конвейеры и выберите определение конвейера.

  3. Нажмите кнопку "Изменить", а затем добавьте следующий фрагмент кода в конвейер YAML.

    - task: NuGetToolInstaller@1
      inputs:
        versionSpec: '*'
        checkLatest: true
    
    - task: NuGetAuthenticate@1
      inputs:
        nuGetServiceConnections: <SERVICE_CONNECTION_NAME>
    
    - script: nuget.exe restore <SOLUTION_PATH>      ## If you're using Ubuntu 24.04 or later, use the following command instead: dotnet restore <SOLUTION_PATH>