Azure DevOps Services | Azure DevOps Server | Azure DevOps Server 2022
Azure-artefacten gebruikt het .npmrc-configuratiebestand om npm-clients te verifiëren met feeds. De aanbevolen installatie bewaart de feedconfiguratie en referenties in twee afzonderlijke NPMRC-bestanden : een bestand op projectniveau (ingecheckt naast uw package.json) waarin de feed-URL wordt opgeslagen en een bestand op gebruikersniveau (nooit doorgevoerd) waarin uw referenties worden opgeslagen.
Benodigdheden
Verbinding maken met een feed
Selecteer het tabblad dat overeenkomt met uw besturingssysteem en volg de stappen om uw NPMRC-bestanden te configureren:
Notitie
vsts-npm-auth wordt niet ondersteund in Azure DevOps Server.
Meld u aan bij uw Azure DevOps-organisatie en ga vervolgens naar uw project.
Selecteer Artefacten en selecteer vervolgens uw feed in de vervolgkeuzelijst.
Selecteer Verbinding maken met feed en selecteer vervolgens npm in het linkernavigatiedeelvenster.
Als u de installatie niet hebt uitgevoerd vsts-npm-auth, voert u de volgende opdracht uit:
npm install -g vsts-npm-auth --registry https://registry.npmjs.com --always-auth false
Voeg een NPMRC-bestand toe aan uw project in dezelfde map als uw package.jsonbestand en plak het fragment uit de sectie Project setup in het bestand.
Voer de volgende opdracht uit om een token toe te voegen aan uw NPMRC-bestand op gebruikersniveau. npm retourneert een fout 401 Niet-geautoriseerd wanneer het token verloopt. Voer deze opdracht opnieuw uit om het te vernieuwen.
vsts-npm-auth -config .npmrc
Meld u aan bij uw Azure DevOps-organisatie en ga vervolgens naar uw project.
Selecteer Artefacten en selecteer vervolgens uw feed in de vervolgkeuzelijst.
Selecteer Verbinding maken met feed en selecteer vervolgens npm in het linkernavigatiedeelvenster.
Voeg een NPMRC-bestand toe aan uw project in dezelfde map als uw package.jsonbestand en plak het fragment uit de sectie Project setup in het bestand. Het bestand moet er ongeveer als volgt uitzien:
registry=https://pkgs.dev.azure.com/<ORGANIZATION_NAME>/<PROJECT_NAME>/_packaging/<FEED_NAME>/npm/registry/
Inloggegevens instellen
Kopieer het volgende fragment en plak het in uw gebruikersniveau-npmrc-bestand:
Organisatiegerichte feed:
; begin auth token
//pkgs.dev.azure.com/<ORGANIZATION_NAME>/_packaging/<FEED_NAME>/npm/registry/:username=[ENTER_ANY_VALUE_BUT_NOT_AN_EMPTY_STRING]
//pkgs.dev.azure.com/<ORGANIZATION_NAME>/_packaging/<FEED_NAME>/npm/registry/:_password=[BASE64_ENCODED_PERSONAL_ACCESS_TOKEN]
//pkgs.dev.azure.com/<ORGANIZATION_NAME>/_packaging/<FEED_NAME>/npm/registry/:email=npm requires email to be set but doesn't use the value
//pkgs.dev.azure.com/<ORGANIZATION_NAME>/_packaging/<FEED_NAME>/npm/:username=[ENTER_ANY_VALUE_BUT_NOT_AN_EMPTY_STRING]
//pkgs.dev.azure.com/<ORGANIZATION_NAME>/_packaging/<FEED_NAME>/npm/:_password=[BASE64_ENCODED_PERSONAL_ACCESS_TOKEN]
//pkgs.dev.azure.com/<ORGANIZATION_NAME>/_packaging/<FEED_NAME>/npm/:email=npm requires email to be set but doesn't use the value
; end auth token
Feed voor projectbereik:
; begin auth token
//pkgs.dev.azure.com/<ORGANIZATION_NAME>/<PROJECT_NAME>/_packaging/<FEED_NAME>/npm/registry/:username=[ENTER_ANY_VALUE_BUT_NOT_AN_EMPTY_STRING]
//pkgs.dev.azure.com/<ORGANIZATION_NAME>/<PROJECT_NAME>/_packaging/<FEED_NAME>/npm/registry/:_password=[BASE64_ENCODED_PERSONAL_ACCESS_TOKEN]
//pkgs.dev.azure.com/<ORGANIZATION_NAME>/<PROJECT_NAME>/_packaging/<FEED_NAME>/npm/registry/:email=npm requires email to be set but doesn't use the value
//pkgs.dev.azure.com/<ORGANIZATION_NAME>/<PROJECT_NAME>/_packaging/<FEED_NAME>/npm/:username=[ENTER_ANY_VALUE_BUT_NOT_AN_EMPTY_STRING]
//pkgs.dev.azure.com/<ORGANIZATION_NAME>/<PROJECT_NAME>/_packaging/<FEED_NAME>/npm/:_password=[BASE64_ENCODED_PERSONAL_ACCESS_TOKEN]
//pkgs.dev.azure.com/<ORGANIZATION_NAME>/<PROJECT_NAME>/_packaging/<FEED_NAME>/npm/:email=npm requires email to be set but doesn't use the value
; end auth token
Genereer een persoonlijk toegangstoken met het lees- en schrijfbereikvoor pakketten>.
Base64-codeer uw PAT met behulp van een van de volgende methoden:
Node.js (alle platforms): Voer de volgende opdracht uit, voer uw PAT in wanneer u hierom wordt gevraagd en kopieer de resulterende waarde.
node -e "require('readline') .createInterface({input:process.stdin,output:process.stdout,historySize:0}) .question('PAT> ',p => { b64=Buffer.from(p.trim()).toString('base64');console.log(b64);process.exit(); })"
macOS of Linux: voer de volgende opdracht uit en kopieer de uitvoer.
echo -n "YOUR_PERSONAL_ACCESS_TOKEN" | base64
Vervang de [BASE64_ENCODED_PERSONAL_ACCESS_TOKEN] placeholders in uw gebruikersspecifieke .npmrc-bestand door de gecodeerde waarde.
Meld u aan bij uw Azure DevOps-verzameling en ga vervolgens naar uw project.
Kies Artefacten, kies uw feed uit het vervolgkeuzemenu en kies vervolgens Verbinding maken met feed.
Selecteer npm en volg de stappen in de sectie Project setup om uw NPMRC-bestand te configureren en te verifiëren met uw feed.
Meld u aan bij uw Azure DevOps-verzameling en ga vervolgens naar uw project.
Selecteer Artefacten en selecteer vervolgens uw feed in de vervolgkeuzelijst.
Selecteer Verbinding maken met feed en selecteer vervolgens npm in het linkernavigatiedeelvenster.
Voeg een NPMRC-bestand toe aan uw project in dezelfde map als uw package.jsonbestand en plak het fragment uit de sectie Project setup in het bestand. Het bestand moet er ongeveer als volgt uitzien:
registry=http://<SERVER_NAME>/<COLLECTION_NAME>/<PROJECT_NAME>/_packaging/<FEED_NAME>/npm/registry/
Inloggegevens instellen
Kopieer het volgende codefragment en plak dit in je gebruikersniveau .npmrc-bestand:
feed met verzamelingsbereik:
; begin auth token
//<SERVER_NAME>/<COLLECTION_NAME>/_packaging/<FEED_NAME>/npm/registry/:username=DefaultCollection
//<SERVER_NAME>/<COLLECTION_NAME>/_packaging/<FEED_NAME>/npm/registry/:_password=[BASE64_ENCODED_PERSONAL_ACCESS_TOKEN]
//<SERVER_NAME>/<COLLECTION_NAME>/_packaging/<FEED_NAME>/npm/registry/:email=npm requires email to be set but doesn't use the value
//<SERVER_NAME>/<COLLECTION_NAME>/_packaging/<FEED_NAME>/npm/:username=DefaultCollection
//<SERVER_NAME>/<COLLECTION_NAME>/_packaging/<FEED_NAME>/npm/:_password=[BASE64_ENCODED_PERSONAL_ACCESS_TOKEN]
//<SERVER_NAME>/<COLLECTION_NAME>/_packaging/<FEED_NAME>/npm/:email=npm requires email to be set but doesn't use the value
; end auth token
Feed voor projectbereik:
; begin auth token
//<SERVER_NAME>/<COLLECTION_NAME>/<PROJECT_NAME>/_packaging/<FEED_NAME>/npm/registry/:username=[ENTER_ANY_VALUE_BUT_NOT_AN_EMPTY_STRING]
//<SERVER_NAME>/<COLLECTION_NAME>/<PROJECT_NAME>/_packaging/<FEED_NAME>/npm/registry/:_password=[BASE64_ENCODED_PERSONAL_ACCESS_TOKEN]
//<SERVER_NAME>/<COLLECTION_NAME>/<PROJECT_NAME>/_packaging/<FEED_NAME>/npm/registry/:email=npm requires email to be set but doesn't use the value
//<SERVER_NAME>/<COLLECTION_NAME>/<PROJECT_NAME>/_packaging/<FEED_NAME>/npm/:username=[ENTER_ANY_VALUE_BUT_NOT_AN_EMPTY_STRING]
//<SERVER_NAME>/<COLLECTION_NAME>/<PROJECT_NAME>/_packaging/<FEED_NAME>/npm/:_password=[BASE64_ENCODED_PERSONAL_ACCESS_TOKEN]
//<SERVER_NAME>/<COLLECTION_NAME>/<PROJECT_NAME>/_packaging/<FEED_NAME>/npm/:email=npm requires email to be set but doesn't use the value
; end auth token
Genereer een persoonlijk toegangstoken met het lees- en schrijfbereikvoor pakketten>.
Voer de volgende opdracht uit, voer uw PAT in wanneer u hierom wordt gevraagd en kopieer de resulterende Base64-gecodeerde waarde.
node -e "require('readline') .createInterface({input:process.stdin,output:process.stdout,historySize:0}) .question('PAT> ',p => { b64=Buffer.from(p.trim()).toString('base64');console.log(b64);process.exit(); })"
Vervang de [BASE64_ENCODED_PERSONAL_ACCESS_TOKEN] placeholders in uw gebruikersspecifieke .npmrc-bestand door de gecodeerde waarde.
Verwante inhoud