Connecter votre projet npm à Azure Artifacts

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

Azure Artifacts permet aux développeurs de gérer leurs packages à partir de différentes sources, y compris les registres publics tels que npmjs.com et les flux privés. Pour vous authentifier auprès d’Azure Artifacts, vous devez 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.

Prérequis

Se connecter au flux

Azure Artifacts recommande d’utiliser deux fichiers de configuration distincts. La première est dédiée à l’authentification auprès d’Azure Artifacts, tandis que la seconde doit être conservée localement pour stocker vos informations d’identification. Cette approche vous permet de partager votre fichier de configuration tout en conservant vos informations d’identification sécurisées.

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. Cela permet au client npm d’accéder facilement à vos informations d’identification pour l’authentification.

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 connectez-vous au flux.

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

  3. Sélectionnez npm dans la barre latérale gauche. S’il s’agit de la première utilisation d’Azure Artifacts avec npm, vérifiez que vous avez installé les prérequis.

  4. Suivez les instructions de la section Configuration de Project pour vous connecter à votre flux.

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

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

  2. Sélectionnez Artefacts, puis connectez-vous au flux.

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

  3. Sélectionnez npm dans la barre latérale gauche, puis suivez les instructions de la section Configuration du projet pour configurer votre fichier de configuration.

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

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

  2. Sélectionnez Artefacts, puis connectez-vous au flux.

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

  3. Sélectionnez npm à gauche, puis 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. Connectez-vous à votre collection Azure DevOps puis accédez à votre projet.

  2. Sélectionnez Artefacts, puis connectez-vous au flux.

    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 fournies pour configurer vos fichiers .npmrc et projet.

    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 en 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 de hiérarchiser la définition de votre tâche d’authentification npm au début de votre pipeline. Cette étape 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 aux étapes suivantes 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 accéder à votre flux à partir de votre pipeline, assurez-vous que le rôle de service de génération est défini sur Feed And Upstream Reader (Contributeur) dans vos autorisations de 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

Cette erreur indique que le dossier des modules npm n’a pas été ajouté à votre chemin d’accès. Réexécutez le programme d’installation Node.js et veillez à sélectionner l’option Add to PATH . 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.

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

Impossible de s’authentifier

  • Erreur : code E401 npm ERR ! Impossible de s’authentifier : -> 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
    

Impossible de publier

Si vous rencontrez une erreur 403, cela peut indiquer un conflit de noms. Dans Azure Artifacts, les packages sont immuables, ce qui signifie qu’une fois que vous publiez un package sur votre flux, son numéro de version est réservé définitivement. Même si vous la supprimez, vous ne pouvez pas publier un nouveau package avec le même numéro de version. Pour résoudre ce problème, mettez à jour la version du package dans votre fichier package.json , puis réessayez.