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 quickstart.

Pour en savoir plus, consultez les informations suivantes :

  1. Si vous débutez avec npm, découvrez les concepts suivants :
  2. Créez un dépôt de packages Node.js pour vos packages.
  3. Accordez des autorisations au compte qui se connecte au dépôt. Les comptes de service des intégrations courantes avec Artifact Registry disposent d'autorisations par défaut pour les dépôts d'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 provenant à la fois 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 au niveau global.

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 de votre projet npm. Par défaut, l'assistant d'identification Artifact Registry vérifie ce fichier .npmrc pour vos dépôts.

Si vous ne souhaitez pas exposer les chemins de dépôt dans votre système de contrôle du code source, vous pouvez:

  • Ajoutez le nom de fichier .npmrc à la liste des fichiers à ignorer de la commande source.
  • Stockez plutôt la liste des dépôts dans le 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 le répertoire d'accueil de l'utilisateur ou est défini avec le paramètre npm --userconfig ou la variable d'environnement $NPM_CONFIG_USERCONFIG.

L'assistant d'identification Artifact Registry est stocké dans le registre npm public et ne nécessite pas d'authentification pour son 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 la documentation sur les fichiers de configuration npm.