Udostępnij za pośrednictwem


Przywracanie pakietów NuGet za pomocą usługi Azure Pipelines

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

Za pomocą funkcji przywracania pakietów NuGet można zainstalować całą zależność projektu bez konieczności przechowywania ich w kontroli źródła. Pozwala to na czystsze środowisko programistyczne i mniejszy rozmiar repozytorium. Pakiety NuGet można przywrócić przy użyciu zadania przywracania NuGet, interfejsu wiersza polecenia NuGet lub interfejsu wiersza polecenia platformy .NET Core. W tym artykule pokazano, jak przywrócić pakiety NuGet przy użyciu potoków klasycznych i YAML.

Wymagania wstępne

Przywracanie pakietów NuGet z kanału informacyjnego

  1. Przejdź do klasycznej definicji potoku, a następnie wybierz pozycję Edytuj.

  2. Wybierz, + aby dodać nowe zadanie. Wyszukaj ciąg NuGet, a następnie wybierz pozycję Dodaj , aby dodać zadanie do potoku.

  3. Nadaj swojemu zadaniu nazwę i wybierz pozycję Przywróć w poleceniu.

  4. Wybierz pozycję Kanały informacyjne, które wybieram tutaj, a następnie wybierz źródło danych z menu rozwijanego. Jeśli chcesz użyć własnego pliku konfiguracji, wybierz pozycję Źródła danych w pliku NuGet.config i wprowadź ścieżkę do pliku NuGet.config i połączenia z usługą, jeśli chcesz uwierzytelnić się przy użyciu źródeł danych spoza organizacji.

  5. Jeśli chcesz dołączyć pakiety z NuGet.org, zaznacz pole wyboru Użyj pakietów z NuGet.org .

  6. Po zakończeniu wybierz pozycję Zapisz i kolejkę .

    Zrzut ekranu przedstawiający sposób konfigurowania zadania przywracania NuGet.

Uwaga

Klasyczne przywracanie NuGet używa zadania NuGetCommand@2 . Domyślnie ta wersja używa pakietu NuGet 4.1.0. Użyj zadania Instalator narzędzi NuGet, jeśli chcesz użyć innej wersji narzędzia NuGet.

Przywracanie pakietów NuGet lokalnie

Umieść plik nuget.config w tym samym folderze co plik .csproj lub .sln. Plik konfiguracji powinien wyglądać podobnie do poniższego przykładu:

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <packageSources>
    <!-- remove inherited connection strings -->
    <clear />
    <!-- add an Azure Artifacts feed -->
    <add key="FabrikamFiber" value="https://pkgs.dev.azure.com/microsoftLearnModule/_packaging/FabrikamFiber/nuget/v3/index.json" />
    <!-- Get packages from NuGet.org -->
    <add key="nuget.org" value="https://api.nuget.org/v3/index.json" protocolVersion="3" />
  </packageSources>
</configuration>

Aby przywrócić pakiety NuGet, uruchom następujące polecenie w katalogu projektu:

nuget.exe restore

Przywracanie pakietów NuGet ze źródła danych w innej organizacji

Aby przywrócić pakiety NuGet ze źródła danych w innej organizacji usługi Azure DevOps, musisz użyć osobistego tokenu dostępu do uwierzytelniania.

Tworzenie osobistego tokenu dostępu

  1. Przejdź do organizacji usługi Azure DevOps, a następnie wybierz pozycję Ustawienia>użytkownika Osobiste tokeny dostępu.

    Zrzut ekranu przedstawiający sposób tworzenia osobistego tokenu dostępu.

  2. Utwórz osobisty token dostępu z zakresem pakowania (odczyt) i skopiuj swój token dostępu do schowka.

    Zrzut ekranu przedstawiający sposób tworzenia osobistego tokenu dostępu z uprawnieniami do odczytu pakietów.

Przywracanie pakietów NuGet

  1. Przejdź do definicji potoku i wybierz zadanie przywracania NuGet. Upewnij się, że używasz wersji 2 zadania.

    Zrzut ekranu przedstawiający wersję zadania przywracania NuGet.

  2. Wybierz pozycję Źródła danych i uwierzytelnianie, a następnie wybierz pozycję Źródła danych w pliku NuGet.config.

  3. Wybierz ścieżkę pliku NuGet.config .

  4. Wybierz pozycję Nowy , aby dodać poświadczenia dla źródeł danych spoza tej organizacji/kolekcji.

    Zrzut ekranu przedstawiający sposób konfigurowania zadania przywracania NuGet.

  5. Wybierz pozycję Zewnętrzny serwer Usługi Azure DevOps, a następnie wprowadź adres URL kanału informacyjnego (upewnij się, że jest zgodny z elementami w pliku NuGet.config), nazwą połączenia usługi i utworzonym wcześniej osobistym tokenem dostępu. Wybierz Zapisz, gdy skończysz.

    Zrzut ekranu przedstawiający sposób dodawania nowego połączenia z usługą.

  6. Po zakończeniu wybierz pozycję Zapisz i kolejkę .

Często zadawane pytania

Pyt.: Mój potok nie może przywrócić moich pakietów NuGet?

1: Zadanie przywracania NuGet może zakończyć się niepowodzeniem z kilku powodów. Najbardziej typowym scenariuszem jest dodanie nowego projektu wymagającego platformy docelowej, która nie jest obsługiwana przez wersję narzędzia NuGet używaną przez potok. Ten błąd generalnie nie występuje w lokalnym środowisku programistycznym, ponieważ program Visual Studio dba o właściwe aktualizowanie rozwiązania. Pamiętaj, aby uaktualnić zadanie narzędzia NuGet do najnowszej wersji.