Teilen über


Veröffentlichen von NuGet-Paketen auf NuGet.org (Klassisch/YAML)

Mithilfe von Azure Pipelines können Entwickler*innen den Prozess zur Veröffentlichung ihrer NuGet-Pakete in Feeds und öffentlichen Registrierungen optimieren. In diesem Artikel erfahren Sie, wie Sie Ihre NuGet-Pakete auf NuGet.org veröffentlichen.

Voraussetzungen

Produkt Voraussetzungen
Azure DevOps - Ein Azure DevOps-Projekt.
- Berechtigungen:
    - Um Zugriff auf alle Pipelines im Projekt zu gewähren, müssen Sie Mitglied der Gruppe Projektadministratoren sein.
    - Um Dienstverbindungen zu erstellen, müssen Sie über die Rolle Administrator oder Creator für Dienstverbindungen verfügen.
NuGet.org - Ein NuGet-Konto.

Erstellen eines API-Schlüssels

  1. Navigieren Sie zu NuGet.org, und melden Sie sich bei Ihrem Konto an.

  2. Wählen Sie das Symbol für Ihren Benutzernamen und anschließend API-Schlüssel aus.

  3. Wählen Sie Erstellen aus, und geben Sie dann einen Namen für Ihren Schlüssel an. Weisen Sie dem Schlüssel den Bereich Neue Pakete und Paketversion pushen zu, und geben Sie * in das Feld Globmuster ein, um alle Pakete einzuschließen.

  4. Wählen Sie Erstellen, wenn Sie fertig sind.

  5. Wählen Sie Kopieren aus, und speichern Sie Ihren API-Schlüssel an einem sicheren Speicherort.

Erstellen einer Dienstverbindung

  1. Melden Sie sich bei Ihrer Azure DevOps-Organisation an, und navigieren Sie dann zu Ihrem Projekt.

  2. Wählen Sie zahnradsymbolProject settings (Projekteinstellungen) in der unteren Ecke der Seite aus.

  3. Wählen Sie NuGet und anschließend Weiter aus.

  4. Wählen Sie ApiKey als Authentifizierungsmethode aus, und legen Sie die Feed-URL auf: https://api.nuget.org/v3/index.json fest.

  5. Geben Sie den ApiKey ein, den Sie zuvor im Feld ApiKey erstellt haben, und geben Sie einen Namen für Ihre Dienstverbindung an.

  6. Wählen Sie das Kontrollkästchen Allen Pipelines die Zugriffsberechtigung gewähren und dann Speichern aus, wenn Sie fertig sind.

Veröffentlichen von Paketen

Hinweis

Wenn Sie Ubuntu 24.04 oder höher verwenden, müssen Sie die NuGetAuthenticate Aufgabe mit der .NET CLI anstelle der NuGetCommand@2 Aufgabe verwenden. Weitere Informationen finden Sie unter Support für neuere, auf Ubuntu gehostete Images.

  1. Melden Sie sich bei Ihrer Azure DevOps-Organisation an, und navigieren Sie dann zu Ihrem Projekt.

  2. Wählen Sie Pipelines, Ihre Pipelinedefinition und dann Bearbeiten aus.

  3. Fügen Sie Ihrer YAML-Pipeline den folgenden Snippet hinzu. Ersetzen Sie den Platzhalter durch den Namen der zuvor erstellten Dienstverbindung:

    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>
    

Nachdem die Pipeline erfolgreich abgeschlossen wurde, navigieren Sie auf NuGet.org zur Seite „Pakete”, auf der Sie Ihr zuletzt veröffentlichtes Paket oben finden werden.

Ein Screenshot, der die veröffentlichten Pakete auf NuGet.org zeigt.