Freigeben über


Veröffentlichen von npm-Paketen mit Azure Pipelines (YAML/Klassisch)

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

Mit Azure Pipelines können Sie Ihre npm-Pakete in Azure Artifacts-Feeds innerhalb Ihrer Organisation und in anderen Organisationen veröffentlichen. Dieser Artikel führt Sie durch die Veröffentlichung Ihrer npm-Pakete in internen und externen Feeds mithilfe von YAML- und klassischen Pipelines.

Voraussetzungen

  • Erstellen Sie eine Azure DevOps-Organisation und ein Projekt, falls noch nicht geschehen.

  • Erstellen Sie einen neuen Feed, wenn Sie noch keinen haben.

  • Wenn Sie einen selbst gehosteten Agent verwenden, stellen Sie sicher, dass er über Node.js und npm verfügt.

Veröffentlichen von Paketen in einem Feed in derselben Organisation

Hinweis

Zum Veröffentlichen Ihrer Pakete in einem Feed mithilfe Azure Pipelines stellen Sie sicher, dass Builddienst für Projektsammlung und der Builddienst Ihrer Dienstidentität auf Feedherausgeber (Mitwirkender) gesetzt wurden. Weitere Informationen finden Sie unter Neue Benutzer und Gruppen hinzufügen .

steps:
- task: NodeTool@0
  inputs:
    checkLatest: true

- task: npmAuthenticate@0
  displayName: 'Authenticate to Azure Artifacts feed'
  inputs:
    workingFile: .npmrc

- script: |
   npm publish
  displayName: Publish

Veröffentlichen von Paketen in einem Feed in einer anderen Organisation

Um Ihre Pakete in einem Feed in einer anderen Azure DevOps-Organisation zu veröffentlichen, müssen Sie zuerst ein persönliches Zugriffstoken in der Zielorganisation erstellen.

Navigieren Sie zu der Organisation, die Ihren Zielfeed hosten, und erstellen Sie ein persönliches Zugriffstoken mit dem Bereich Verpacken>Lesen & Schreiben. Kopieren Sie Ihr persönliches Zugriffstoken, während Sie es im folgenden Abschnitt benötigen.

Erstellen einer Dienstverbindung

  1. Melden Sie sich bei der Azure DevOps-Organisation an, in der Ihre Pipeline ausgeführt wird, und navigieren Sie dann zu Ihrem Projekt.

  2. Navigieren Sie zu den Project-Einstellungen>Dienstverbindungen.

  3. Wählen Sie "Neue Dienstverbindung", wählen Sie "npm" und dann "Weiter" aus.

  4. Wählen Sie "Benutzername" und "Kennwort " als Authentifizierungsmethode aus, und geben Sie dann Ihre Registrierungs-URL ein. Geben Sie Ihren Benutzernamen ein (ein Platzhalter, da Azure Pipelines Ihre .npmrc Konfigurationsdatei und das zuvor erstellte persönliche Zugriffstoken zur Authentifizierung verwendet). Fügen Sie für "Kennwort" Ihr persönliches Zugriffstoken ein. Geben Sie einen Namen für Ihre Dienstverbindung an, und aktivieren Sie das Kontrollkästchen "Zugriffsberechtigung für alle Pipelines gewähren".

  5. Wählen Sie Speichern aus, wenn Sie fertig sind.

Veröffentlichen von Paketen

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

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

  3. Wählen Sie Bearbeiten aus, und fügen Sie dann der YAML-Pipeline den folgenden Codeausschnitt hinzu.

    - task: NodeTool@0
      inputs:
        checkLatest: true
    
    - task: npmAuthenticate@0
      displayName: 'Authenticate to Azure Artifacts feed'
      inputs:
        workingFile: .npmrc
        customEndpoint: <SERVICE_CONNECTION_NAME>
    
    - script: |
       npm publish  
      displayName: Publish