Freigeben über


Verbinden Ihres npm-Projekts mit Azure Artifacts

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

Mit Azure Artifacts können Entwickler ihre Pakete aus verschiedenen Quellen verwalten, einschließlich öffentlicher Registrierungen wie npmjs.com und privaten Feeds. Um sich mit Azure Artifacts zu authentifizieren, müssen Sie Ihre npm-Konfigurationsdatei konfigurieren. Diese Datei enthält Feed-URLs und Anmeldeinformationen, die von npm verwendet werden, und bietet Optionen zum Anpassen des npm-Clientverhaltens, z. B. das Einrichten von Proxys, das Definieren von Standardpaketspeicherorten oder das Konfigurieren privater Paketfeeds. Die .npmrc-Datei befindet sich in der Regel im Home-Verzeichnis des Benutzers, kann aber auch auf Projektebene erstellt werden, um die Standardeinstellungen außer Kraft zu setzen.

Voraussetzungen

Verbindung mit Feed herstellen

Azure Artifacts empfiehlt die Verwendung von zwei separaten Konfigurationsdateien. Der erste dient der Authentifizierung mit Azure Artifacts, während die zweite lokal aufbewahrt werden sollte, um Ihre Anmeldeinformationen zu speichern. Mit diesem Ansatz können Sie Ihre Konfigurationsdatei freigeben, während Ihre Anmeldeinformationen sicher bleiben.

Um die zweite Datei einzurichten, platzieren Sie sie einfach in Ihrem Startverzeichnis auf Ihrem Entwicklungscomputer, und fügen Sie alle Ihre Registrierungsanmeldeinformationen ein. Dadurch kann der npm-Client auf einfache Weise auf Ihre Anmeldeinformationen für die Authentifizierung zugreifen.

Die folgenden Schritte führen Sie durch das Einrichten der ersten Konfigurationsdatei. Wählen Sie die Registerkarte aus, die Ihrer Entwicklungsumgebung entspricht:

Anmerkung

vsts-npm-auth wird in Azure DevOps Server nicht unterstützt.

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

  2. Wählen Sie Artefakte, und wählen Sie dann Verbinden mit Feed.

    Ein Screenshot, der zeigt, wie eine Verbindung mit einem Feed in Azure DevOps Services hergestellt wird.

  3. Wählen Sie npm in der linken Seitenleiste. Wenn Sie azure Artifacts mit npm zum ersten Mal verwenden, stellen Sie sicher, dass Sie die erforderlichen Komponenten installiert haben.

  4. Befolgen Sie die Anweisungen in der Einrichtung des Projekts Abschnitt, um eine Verbindung zu Ihrem Feed herzustellen.

    Ein Screenshot, der zeigt, wie Sie Ihr npm-Projekt einrichten.

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

  2. Wählen Sie Artefakte, und wählen Sie dann Verbinden mit Feed.

    Ein Screenshot, der zeigt, wie eine Verbindung mit einem Feed in Azure DevOps Server 2022.1 hergestellt wird.

  3. Wählen Sie npm- auf der linken Randleiste aus, und folgen Sie dann den Anweisungen im Abschnitt Project-Setup, um die Konfigurationsdatei einzurichten.

    Screenshot, der zeigt, wie Sie Ihr npm-Projekt in Azure DevOps Server 2022.1 einrichten.

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

  2. Wählen Sie Artefakte, und wählen Sie dann Verbinden mit Futtermittel.

    Ein Screenshot, der zeigt, wie eine Verbindung mit einem Feed in Azure DevOps Server 2020.1 hergestellt wird.

  3. Wählen Sie npm auf der linken Seite aus, und folgen Sie dann den Anweisungen in Project setup, um die Konfigurationsdatei einzurichten.

    Ein Screenshot, der zeigt, wie Sie Ihr npm-Projekt in Azure DevOps Server 2020.1 einrichten.

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

  2. Wählen Sie Artefakte, und wählen Sie dann Verbinden mit Futtermittel.

    Ein Screenshot, der zeigt, wie eine Verbindung mit einem Feed in Azure DevOps Server 2019.1 hergestellt wird.

  3. Ein neues Fenster wird angezeigt. Wählen Sie im linken Navigationsbereich npm.

  4. Befolgen Sie die mitgelieferten Anweisungen zur Konfiguration Ihres Projekt und user .npmrc-Dateien.

    Screenshot, der zeigt, wie Sie Ihre npmrc-Dateien auf Projektebene und Benutzerebene in Azure DevOps Server 2019.1 einrichten.

Tipp

Die Verwendung mehrerer Registrierungen in .npmrc-Dateien wird unterstützt durch Geltungsbereiche und vorgelagerte Quellen.

Pipeline-Authentifizierung

Um sich mit Ihrer Pipeline zu authentifizieren, empfiehlt Azure Artifacts die Verwendung der npm authenticate-Aufgabe.

Bei der Verwendung von Task-Runnern wie Gulp oder Grunt, ist es zu priorisieren, die Einstellung Ihrer npm authenticate-Aufgabe am Anfang Ihrer Pipeline. Dieser Schritt garantiert, dass Ihre Anmeldeinformationen in die NPMRC-Datei Ihres Projekts eingefügt und während der gesamten Pipelineausführung aufbewahrt werden, sodass nachfolgende Schritte auf die Anmeldeinformationen in der Konfigurationsdatei zugreifen können.

  1. Navigieren Sie zu Ihrem Projekt, wählen Sie Rohrleitungen, und wählen Sie dann Ihre Pipeline-Definition aus.

  2. Wählen Sie Bearbeiten aus, um Ihre Pipeline zu bearbeiten.

  3. Wählen Sie + aus, um Ihrer Pipeline eine neue Aufgabe hinzuzufügen.

    Screenshot, der zeigt, wie man die npm-Authentifizierungsaufgabe zu Ihrer Pipeline hinzufügt.

  1. Navigieren Sie zu Ihrem Projekt, wählen Sie Rohrleitungen>Baut,und wählen Sie dann Ihre Build-Definition aus.

  2. Wählen Sie bearbeiten um Ihre Build-Pipeline zu ändern.

  3. Wählen Sie + aus, um Ihrer Build-Pipeline eine neue Aufgabe hinzuzufügen.

    Screenshot, der zeigt, wie Sie die Authentifizierungsaufgabe für npm zu Ihrer Pipeline hinzufügen.

  1. Suche nach dem npm Authentifizieren Aufgabe, und wählen Sie dann hinzufügen.

    Screenshot, der die der Pipeline hinzugefügte Aufgabe npm authenticate zeigt.

  2. Wählen Sie Ihr .npmrc Datei, und wählen Sie dann Speichern Sie & Warteschlange wenn Sie fertig sind.

    Screenshot, der zeigt, wie Sie Ihre Datei *.npmrc* hinzufügen.

Anmerkung

Um von Ihrer Pipeline aus auf Ihren Feed zuzugreifen, stellen Sie sicher, dass die Build-Service-Rolle auf Feed und Upstream-Leser (Mitwirkender) in Ihrem Vorschubeinstellungen>Berechtigungen.

Ein Bildschirmfoto zeigt die Build-Service-Rollen in den Feed-Einstellungen.

Anmerkung

Wenn Ihre Organisation eine Firewall oder einen Proxyserver verwendet, stellen Sie sicher, dass Sie die entsprechenden Domänen-URLs zulassen. Siehe Erlaubte IP-Adressen und Domänen-URLs für Einzelheiten.

Problembehandlung

vsts-npm-auth wird nicht erkannt

Dieser Fehler gibt an, dass der Ordner "npm modules" ihrem Pfad nicht hinzugefügt wurde. Führen Sie das Node.js Setup erneut aus, und stellen Sie sicher, dass Sie die Option Add to PATH auswählen. Alternativ können Sie auch den Ordner "npm modules" zu Ihrem Pfad hinzufügen, indem Sie die PATH-Variable in der Eingabeaufforderung auf %APPDATA%\npm oder in PowerShell auf $env:APPDATA\npm ändern.

Screenshot, der zeigt, wie node.jseingerichtet wird.

Authentifizierung nicht möglich

  • Fehler: Code E401 npm ERR!konnte nicht authentifiziert werden: -> Führen Sie den Befehl vsts-npm-auth mit dem -F Flag aus, um sich erneut zu authentifizieren.

    vsts-npm-auth -config .npmrc -F
    

vsts-npm-auth zurücksetzen

Führen Sie die folgenden Schritte aus, um Ihre vsts-npm-auth-Anmeldeinformationen zurückzusetzen:

  1. Deinstallieren Sie vsts-npm-auth:

    npm uninstall -g vsts-npm-auth
    
  2. Löschen Sie den npm-Cache:

    npm cache clean --force
    
  3. Löschen Sie Ihre .npmrc Datei.

  4. Installieren Sie vsts-npm-auth neu:

    npm install -g vsts-npm-auth --registry https://registry.npmjs.com --always-auth false
    

Veröffentlichen nicht möglich

Wenn ein 403-Fehler auftritt, kann dies auf einen Namenskonflikt hindeuten. In Azure Artifacts sind Pakete unveränderlich, d. h., nachdem Sie ein Paket in Ihrem Feed veröffentlicht haben, ist die Versionsnummer dauerhaft reserviert. Selbst wenn Sie es löschen, können Sie kein neues Paket mit derselben Versionsnummer veröffentlichen. Um dieses Problem zu beheben, aktualisieren Sie die Paketversion in Ihrer package.json Datei, und versuchen Sie es dann erneut.