Connecter votre projet npm vers les flux Azure Artifacts

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

Azure Artifacts permet aux développeurs de publier et d’installer différents types de packages à partir de flux et de registres publics tels que npmjs.com. Pour vous authentifier auprès d’Azure Artifacts, il est nécessaire de configurer votre fichier de configuration npm. Ce fichier contient des URL de flux et des informations d’identification utilisées par npm, offrant des options pour personnaliser le comportement de votre client npm, telles que la configuration de proxys, la définition des emplacements de package par défaut ou la configuration des flux de package privés. Le fichier .npmrc se trouve généralement dans le répertoire de base de l’utilisateur, mais peut également être créé au niveau du projet pour remplacer les paramètres par défaut. En modifiant le fichier .npmrc, les utilisateurs peuvent personnaliser leur expérience npm pour répondre à leurs exigences spécifiques.

Prérequis

Configuration du projet

Pour les bonnes pratiques, il est recommandé d’utiliser deux fichiers de configuration distincts. Le premier est utilisé pour l’authentification auprès d’Azure Artifacts, tandis que le deuxième est stocké localement et contient vos informations d’identification.

Pour configurer le deuxième fichier, placez-le simplement dans votre répertoire de base sur votre ordinateur de développement et incluez toutes vos informations d’identification de Registre. De cette façon, le client npm peut facilement accéder à vos informations d’identification pour l’authentification, ce qui vous permet de partager votre fichier de configuration tout en conservant vos informations d’identification sécurisées.

Les étapes suivantes vous guideront tout au long de la configuration du premier fichier de configuration :

Remarque

vsts-npm-auth n’est pas pris en charge dans Azure DevOps Server.

  1. Connectez-vous à votre organisation Azure DevOps puis accédez à votre projet.

  2. Sélectionnez Artefacts, puis sélectionnez Connecter à alimenter.

    Capture d’écran montrant comment se connecter à un flux.

  3. Sélectionnez npm dans le volet de navigation gauche.

  4. S’il s’agit de la première utilisation d’Azure Artifacts avec npm, sélectionnez Obtenir les outils et suivez les instructions pour installer les prérequis.

  5. Suivez les instructions de la configuration de Project pour vous connecter à votre flux.

    Capture d’écran montrant comment configurer votre projet npm.

  1. Sélectionnez votre collection, puis accédez à votre projet.

  2. Sélectionnez Artefacts, puis sélectionnez Connecter à alimenter.

    Capture d’écran montrant comment se connecter à un flux dans Azure DevOps Server 2022.1.

  3. Sélectionnez npm dans le volet de navigation gauche.

  4. S’il s’agit de la première utilisation d’Azure Artifacts avec npm, sélectionnez Obtenir les outils et suivez les instructions pour installer les prérequis.

  5. Suivez les instructions de la configuration de Project pour configurer votre fichier de configuration.

    Capture d’écran montrant comment configurer votre projet npm dans Azure DevOps Server 2022.1.

  1. Sélectionnez votre collection, puis accédez à votre projet.

  2. Sélectionnez Artefacts, puis sélectionnez Connecter à alimenter.

    Capture d’écran montrant comment se connecter à un flux dans Azure DevOps Server 2020.1.

  3. Sélectionnez npm dans le volet de navigation gauche.

  4. S’il s’agit de la première utilisation d’Azure Artifacts avec npm, sélectionnez Obtenir les outils et suivez les instructions pour installer les prérequis.

  5. Suivez les instructions de la configuration de Project pour configurer votre fichier de configuration.

    Capture d’écran montrant comment configurer votre projet npm dans Azure DevOps Server 2020.1.

  1. Sélectionnez votre collection, puis accédez à votre projet.

  2. Sélectionnez Artefacts, puis sélectionnez Connecter à alimenter.

    Capture d’écran montrant comment se connecter à un flux dans Azure DevOps Server 2019.1.

  3. Une nouvelle fenêtre s'affiche. Dans le volet de navigation de gauche, sélectionnez npm.

  4. Suivez les instructions pour configurer vos fichiers .npmrc de projet et d’utilisateur.

    Capture d’écran montrant comment configurer vos fichiers npmrc de niveau projet et de niveau utilisateur dans Azure DevOps Server 2019.1.

Conseil

L’utilisation de plusieurs registres dans les fichiers .npmrc est prise en charge avec des étendues et des sources amont.

Authentification de pipeline

Pour vous authentifier auprès de votre pipeline, Azure Artifacts recommande d’utiliser la tâche d’authentification npm.

Lorsque vous utilisez des exécuteurs de tâches tels que gulp ou Grunt, il est important d’inclure votre tâche d’authentification npm au début de votre pipeline. Cette action garantit que vos informations d’identification sont injectées dans le fichier .npmrc de votre projet et conservées tout au long de l’exécution du pipeline, ce qui permet d’accéder aux informations d’identification dans le fichier de configuration.

  1. Accédez à votre projet, sélectionnez Pipelines, puis sélectionnez votre définition de pipeline.

  2. Sélectionnez Modifier pour modifier votre pipeline.

  3. Sélectionnez cette option + pour ajouter une nouvelle tâche à votre pipeline.

    Capture d’écran montrant comment ajouter la tâche d’authentification npm à votre pipeline.

  1. Accédez à votre projet, sélectionnez Builds pipelines>, puis sélectionnez votre définition de build.

  2. Sélectionnez Modifier pour modifier votre pipeline de build.

  3. Sélectionnez cette option + pour ajouter une nouvelle tâche à votre pipeline de build.

    Capture d’écran montrant comment ajouter la tâche d’authentification npm à votre pipeline.

  1. Recherchez la tâche d’authentification npm, puis sélectionnez Ajouter.

    Capture d’écran montrant la tâche d’authentification npm ajoutée au pipeline.

  2. Sélectionnez votre fichier .npmrc , puis sélectionnez Enregistrer et file d’attente lorsque vous avez terminé.

    Capture d’écran montrant comment ajouter votre fichier *.npmrc*.

Remarque

Pour que votre pipeline accède à votre flux, vérifiez que le rôle de service de génération est défini sur Feed And Upstream Reader (Contributeur) dans vos paramètres de flux.

Capture d’écran montrant les rôles de service de génération dans les paramètres de flux.

Remarque

Si votre organisation utilise un pare-feu ou un serveur proxy, veillez à autoriser les URL de domaine appropriées. Pour plus d’informations, consultez les adresses IP autorisées et les URL de domaine.

Résolution des problèmes

vsts-npm-auth n’est pas reconnu

Si vous rencontrez l’erreur suivante lors de l’exécution du projet :

  • Cmd: 'vsts-npm-auth' is not recognized as an internal or external command, operable program or batch file.

  • PowerShell : vsts-npm-auth : The term 'vsts-npm-auth' is not recognized as the name of a cmdlet, function, script file, or operable program.

Ensuite, il est probable que le dossier des modules npm n’a pas été ajouté à votre chemin d’accès. Pour résoudre ce problème, réexécutez la configuration de Node.js et veillez à sélectionner l’option Add to PATH .

Capture d’écran montrant comment configurer node.js.

Vous pouvez également ajouter le dossier des modules npm à votre chemin en modifiant la variable PATH à %APPDATA%\npm l’invite de commandes ou $env:APPDATA\npm dans PowerShell.

Impossible de s’authentifier

Si vous rencontrez une erreur E401 : code E401 npm ERR! Unable to authenticate. Exécutez la vsts-npm-auth commande avec l’indicateur -F pour réauthentifier.

vsts-npm-auth -config .npmrc -F

Réinitialiser vsts-npm-auth

Procédez comme suit pour réinitialiser vos informations d’identification vsts-npm-auth :

  1. Désinstallez vsts-npm-auth :

    npm uninstall -g vsts-npm-auth
    
  2. Effacez votre cache npm :

    npm cache clean --force
    
  3. Supprimez votre fichier .npmrc .

  4. Réinstallez vsts-npm-auth :

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