Dela via


Ansluta npm-projektet till Azure Artifacts

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

Med Azure Artifacts kan utvecklare hantera sina paket från olika källor, inklusive både offentliga register som npmjs.com och privata feeds. Om du vill autentisera med Azure Artifacts måste du konfigurera konfigurationsfilen npm. Den här filen innehåller feed-URL:er och autentiseringsuppgifter som används av npm och erbjuder alternativ för att anpassa npm-klientbeteendet, till exempel konfigurera proxyservrar, definiera standardpaketplatser eller konfigurera privata paketfeeds. .npmrc-filen finns vanligtvis i användarens hemkatalog men kan också skapas på projektnivå för att åsidosätta standardinställningarna.

Förutsättningar

Ansluta till feed

Azure Artifacts rekommenderar att du använder två separata konfigurationsfiler. Den första är dedikerad till att autentisera med Azure Artifacts, medan den andra ska sparas lokalt för att lagra dina autentiseringsuppgifter. Med den här metoden kan du dela konfigurationsfilen samtidigt som du håller dina autentiseringsuppgifter säkra.

Om du vill konfigurera den andra filen placerar du den i din hemkatalog på utvecklingsdatorn och inkluderar alla dina registerautentiseringsuppgifter. På så sätt kan npm-klienten enkelt komma åt dina autentiseringsuppgifter för autentisering.

Följande steg vägleder dig genom att konfigurera den första konfigurationsfilen:

Kommentar

vsts-npm-auth stöds inte i Azure DevOps Server.

  1. Logga in på din Azure DevOps-organisation och navigera sedan till projektet.

  2. Välj Artefakter och välj sedan Anslut till feed.

    En skärmbild som visar hur du ansluter till en feed i Azure DevOps Services.

  3. Välj npm i det vänstra sidofältet. Om det är första gången du använder Azure Artifacts med npm kontrollerar du att du har installerat förutsättningarna.

  4. Följ anvisningarna i avsnittet Project setup (Projektkonfiguration) för att ansluta till feeden.

    En skärmbild som visar hur du konfigurerar npm-projektet.

  1. Logga in på din Azure DevOps-samling och navigera sedan till projektet.

  2. Välj Artefakter och välj sedan Anslut till feed.

    En skärmbild som visar hur du ansluter till en feed i Azure DevOps Server 2022.1.

  3. Välj npm i det vänstra sidofältet och följ sedan anvisningarna i avsnittet Projektkonfiguration för att konfigurera konfigurationsfilen.

    En skärmbild som visar hur du konfigurerar npm-projektet i Azure DevOps Server 2022.1.

  1. Logga in på din Azure DevOps-samling och navigera sedan till projektet.

  2. Välj Artefakter och välj sedan Anslut för att mata.

    En skärmbild som visar hur du ansluter till en feed i Azure DevOps Server 2020.1.

  3. Välj npm till vänster och följ sedan anvisningarna i Project-konfigurationen för att konfigurera konfigurationsfilen.

    En skärmbild som visar hur du konfigurerar npm-projektet i Azure DevOps Server 2020.1.

  1. Logga in på din Azure DevOps-samling och navigera sedan till projektet.

  2. Välj Artefakter och välj sedan Anslut för att mata.

    En skärmbild som visar hur du ansluter till en feed i Azure DevOps Server 2019.1.

  3. Ett nytt fönster öppnas. I det vänstra navigeringsfönstret väljer du npm.

  4. Följ de angivna anvisningarna för att konfigurera projektet och användarens .npmrc-filer.

    En skärmbild som visar hur du konfigurerar npmrc-filer på projektnivå och användarnivå i Azure DevOps Server 2019.1.

Dricks

Användning av flera register i .npmrc-filer stöds med omfång och överordnade källor.

Pipelineautentisering

För att autentisera med din pipeline rekommenderar Azure Artifacts att du använder npm-autentisera uppgiften.

När du använder aktivitetslöpare som gulp eller Grunt är det att prioritera inställningen av npm-autentisera uppgiften i början av pipelinen. Det här steget garanterar att dina autentiseringsuppgifter matas in i projektets .npmrc-fil och behålls under hela pipelinekörningen, vilket gör det möjligt för efterföljande steg att komma åt autentiseringsuppgifterna i konfigurationsfilen.

  1. Gå till projektet, välj Pipelines och välj sedan din pipelinedefinition.

  2. Välj Redigera för att ändra pipelinen.

  3. Välj + för att lägga till en ny uppgift i pipelinen.

    Skärmbild som visar hur du lägger till npm-autentiseringsuppgiften i pipelinen.

  1. Gå till projektet, välj Pipelines Builds> och välj sedan din byggdefinition.

  2. Välj Redigera för att ändra bygg-pipelinen.

  3. Välj + för att lägga till en ny uppgift i bygg-pipelinen.

    Skärmbild som visar hur du lägger till npm-autentiseringsuppgiften i pipelinen.

  1. Sök efter npm Authenticate-uppgiften och välj sedan Lägg till.

    Skärmbild som visar npm-autentisera uppgiften som lagts till i pipelinen.

  2. Välj .npmrc-filen och välj sedan Spara & kö när du är klar.

    Skärmbild som visar hur du lägger till filen *.npmrc* .

Kommentar

Om du vill komma åt ditt flöde från pipelinen kontrollerar du att byggtjänstrollen är inställd på Feed And Upstream Reader (Deltagare) i dina feedinställningar>Behörigheter.

En skärmbild som visar rollerna för byggtjänsten i flödesinställningarna.

Kommentar

Om din organisation använder en brandvägg eller en proxyserver kontrollerar du att du tillåter lämpliga domän-URL:er. Mer information finns i Tillåtna IP-adresser och domän-URL:er .

Felsöka

vsts-npm-auth känns inte igen

Det här felet anger att mappen npm-moduler inte har lagts till i sökvägen. Kör konfigurationen av Node.js igen och välj sedan alternativet Add to PATH . Du kan också lägga till mappen npm-moduler i sökvägen genom att ändra PATH-variabeln till %APPDATA%\npm i Kommandotolken eller $env:APPDATA\npm i PowerShell.

En skärmbild som visar hur du konfigurerar node.js.

Det gick inte att autentisera

  • Fel: kod E401 npm ERR! Det går inte att autentiseravsts-npm-auth: –> Kör kommandot med flaggan -F för att autentisera igen:

    vsts-npm-auth -config .npmrc -F
    

Återställ vsts-npm-auth

Följ dessa steg för att återställa dina vsts-npm-auth-autentiseringsuppgifter:

  1. Avinstallera vsts-npm-auth:

    npm uninstall -g vsts-npm-auth
    
  2. Rensa npm-cachen:

    npm cache clean --force
    
  3. Ta bort .npmrc-filen.

  4. Installera om vsts-npm-auth:

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

Det går inte att publicera

Om du stöter på ett 403-fel kan det tyda på en namnkonflikt. I Azure Artifacts är paket oföränderliga, vilket innebär att versionsnumret är permanent reserverat när du publicerar ett paket i flödet. Även om du tar bort det kan du inte publicera ett nytt paket med samma versionsnummer. Åtgärda problemet genom att uppdatera paketversionen i din package.json-fil och sedan försöka igen.