Udostępnij za pośrednictwem


Publikowanie pakietów NuGet w usłudze NuGet.org (classic/YAML)

Korzystając z usługi Azure Pipelines, deweloperzy mogą usprawnić proces publikowania pakietów NuGet do źródeł danych i publicznych rejestrów. Ten artykuł pomoże Ci opublikować pakiety NuGet na NuGet.org.

Wymagania wstępne

produkt Wymagania
Usługi Azure DevOps projekt usługi Azure DevOps.
Uprawnienia - :
    — Aby udzielić dostępu do wszystkich potoków w projekcie, musisz być członkiem grupy administratorzy projektu .
    — Aby utworzyć połączenia usługi, musisz mieć rolę administratora lub Creator dla połączeń usługi .
NuGet.org — konto NuGet.

Tworzenie klucza interfejsu API

  1. Przejdź do NuGet.org i zaloguj się do swojego konta.

  2. Wybierz ikonę nazwy użytkownika, a następnie wybierz pozycję Klucze interfejsu API.

  3. Wybierz pozycję Utwórz, a następnie podaj nazwę klucza. Przypisz zakres Wypychanie nowych pakietów i wersji pakietu do klucza, a następnie wprowadź * wartość w polu Wzorzec globu, aby uwzględnić wszystkie pakiety.

  4. Po zakończeniu wybierz pozycję Utwórz .

  5. Wybierz pozycję Kopiuj i zapisz klucz interfejsu API w bezpiecznej lokalizacji.

Tworzenie połączenia z usługą

  1. Zaloguj się do organizacji usługi Azure DevOps, a następnie przejdź do projektu.

  2. Wybierz ikonę koła zębatego w lewym dolnym rogu strony, aby otworzyć Ustawienia projektu.

  3. Wybierz pozycję NuGet, a następnie wybierz pozycję Dalej.

  4. Wybierz ApiKey jako metodę uwierzytelniania i ustaw adres URL kanału informacyjnego na: https://api.nuget.org/v3/index.json.

  5. Wprowadź klucz ApiKey utworzony wcześniej w polu ApiKey i podaj nazwę połączenia z usługą.

  6. Zaznacz pole wyboru Udziel uprawnień dostępu do wszystkich potoków, a następnie, gdy już to zrobisz, wybierz Zapisz.

Publikowanie pakietów

Notatka

Jeśli używasz systemu Ubuntu 24.04 lub nowszego, musisz użyć zadania NuGetAuthenticate z interfejsem wiersza polecenia platformy .NET zamiast zadania NuGetCommand@2. Aby uzyskać więcej informacji, zobacz Support for newer Ubuntu hosted images (Obsługa nowszych obrazów hostowanych w systemie Ubuntu).

  1. Zaloguj się do organizacji usługi Azure DevOps, a następnie przejdź do projektu.

  2. Wybierz Pipelines, następnie definicję potoków, a potem Edytuj.

  3. Dodaj następujący fragment kodu do potoku YAML. Zastąp symbol zastępczy nazwą utworzonego wcześniej połączenia usługi:

    steps:
    - task: DotNetCoreCLI@2
      displayName: 'dotnet pack'
      inputs:
        command: pack
    - task: NuGetCommand@2
      displayName: 'NuGet push'
      inputs:
        command: push
        nuGetFeedType: external
        publishFeedCredentials: <NAME_OF_YOUR_SERVICE_CONNECTION>
    

Po pomyślnym zakończeniu potoku przejdź do strony pakietów na NuGet.org, gdzie znajdziesz ostatnio opublikowany pakiet znajdujący się u góry.

Zrzut ekranu przedstawiający opublikowane pakiety na NuGet.org.