Gérer les packages Node.js

Artifact Registry est compatible avec les packages Node.js que vous gérez avec npm.

Présentation

Pour vous familiariser avec les packages Node.js dans Artifact Registry, vous pouvez consulter le guide de démarrage rapide.

Pour en savoir plus, consultez les informations suivantes :

  1. Si vous débutez avec npm, prenez connaissance des concepts suivants:
  2. Créez un dépôt de packages Node.js pour vos packages.
  3. Accordez des autorisations au compte auquel se connectera au dépôt. Comptes de service pour les intégrations courantes avec Artifact Registry disposent des autorisations par défaut pour dans un même projet.
  4. Configurez vos outils :
  5. Découvrir comment gérer les packages.

Utiliser des champs d'application

Un champ d'application npm est un libellé pour le regroupement des packages. Les champs d'application sont nécessaires lorsque vous travaillez avec plusieurs registres npm, ce qui inclut :

  • Publier et installer des packages dans différents registres sans avoir à passer d'un registre à un autre. Par exemple, vos builds peuvent inclure des packages du registre npm public et d'un dépôt Artifact Registry.
  • Publier les mêmes packages dans plusieurs dépôts Artifact Registry sur différents projets Google Cloud et d'autres registres npm sans conflit de noms de packages.

Nous vous recommandons de toujours définir un champ d'application pour vos dépôts. Si vous ne spécifiez pas de champ d'application lorsque vous publiez ou installez un package, npm utilise le registre par défaut configuré, tel que le registre npm public.

Vous définissez le champ d'application de chaque dépôt Artifact Registry dans le fichier de configuration .npmrc. Les mêmes identifiants pour l'authentification s'appliquent à l'ensemble des dépôts.

L'exemple suivant montre la configuration de deux dépôts Artifact Registry dans différents projets.

  • Le champ d'application @blue correspond au dépôt du projet blue-project.
  • Le champ d'application @green correspond au dépôt du projet green-project.
@blue:registry=https://us-central1-npm.pkg.dev/blue-project/blue-npm-repo/
//us-central1-npm.pkg.dev/blue-project/blue-npm-repo/:always-auth=true

@green:registry=https://us-central1-npm.pkg.dev/green-project/green-npm-repo/
//us-central1-npm.pkg.dev/green-project/green-npm-repo/:_authToken=""
//us-central1-npm.pkg.dev/green-project/green-npm-repo/:always-auth=true

Une fois authentifié auprès d'Artifact Registry, vous pouvez importer un package dans un dépôt spécifique à l'aide du champ d'application approprié. Par exemple, la commande suivante importe un package dans blue-npm-repo dans le projet blue-project :

npm publish @blue/blue-npm-repo

Pour en savoir plus sur les champs d'application, consultez la documentation npm.

Configurer npm

Les paramètres utilisés pour l'authentification sont stockés dans le fichier de configuration .npmrc. Vous pouvez configurer un fichier .npmrc au niveau du projet, de l'utilisateur ou de manière globale.

Lorsque vous configurez l'authentification avec Artifact Registry, vous définissez les dépôts auxquels vous souhaitez vous connecter et les identifiants d'authentification.

Dépôts Artifact Registry

Nous vous recommandons de définir la liste des dépôts dans le fichier de configuration par projet. Ce fichier se trouve généralement dans le même répertoire que le fichier package.json dans votre projet npm. L'assistant d'identification Artifact Registry vérifie ce fichier .npmrc pour vos dépôts par défaut.

Si vous ne souhaitez pas exposer les chemins d'accès du dépôt dans le dépôt vous pouvez:

  • Ajoutez le nom de fichier .npmrc à la liste des fichiers de votre contrôle des sources à ignorer.
  • Stockez plutôt la liste des dépôts dans votre fichier confg par utilisateur. Le fichier .npmrc par utilisateur se trouve dans votre répertoire d'accueil utilisateur ou est défini avec le paramètre npm --userconfig ou la variable d'environnement $NPM_CONFIG_USERCONFIG. Les paramètres du fichier de configuration par utilisateur s'appliquent à tous vos projets sauf si vous les remplacez au niveau du projet.
Identifiants Artifact Registry

Stockez vos identifiants pour Artifact Registry dans le fichier de configuration par utilisateur afin qu'ils ne soient pas disponibles pour les autres utilisateurs. Ce fichier se trouve dans votre répertoire d'accueil utilisateur, ou est défini avec le paramètre npm --userconfig ou $NPM_CONFIG_USERCONFIG.

Artifact Registry credential helper est stocké dans le registre npm public et ne nécessite pas pour l'installation.

Conservez tout registre par défaut existant configuré dans votre fichier .npmrc. La valeur par défaut est généralement définie sur le registre npm public à l'adresse https://registry.npmjs.org/.

Pour vérifier la valeur de registre par défaut actuelle, exécutez la commande suivante :

npm get registry

Pour en savoir plus sur les fichiers de configuration npm, consultez le Fichier de configuration npm dans la documentation Google Cloud.