Gestionar paquetes de Node.js

Artifact Registry admite paquetes de Node.js que se gestionan con npm.

Información general

Para familiarizarte con los paquetes de Node.js en Artifact Registry, puedes probar la guía de inicio rápido.

Cuando lo tengas todo listo para obtener más información, consulta lo siguiente:

  1. Si no has usado nunca npm, consulta los siguientes conceptos:
  2. Crea un repositorio de paquetes de Node.js para tus paquetes.
  3. Concede permisos a la cuenta que se conectará con el repositorio. Las cuentas de servicio de las integraciones comunes con Artifact Registry tienen permisos predeterminados para los repositorios del mismo proyecto.
  4. Configura tus herramientas:
  5. Consulta cómo gestionar paquetes.

Usar ámbitos

Un ámbito de npm es una etiqueta para agrupar paquetes. Los scopes son necesarios cuando trabajas con varios registros de npm, incluidos los siguientes:

  • Publicar e instalar paquetes en diferentes registros sin tener que cambiar de un registro a otro. Por ejemplo, tus compilaciones pueden incluir paquetes del registro público de npm y de un repositorio de Artifact Registry.
  • Publicar los mismos paquetes en varios repositorios de Artifact Registry de diferentes proyectos, así como en otros registros de npm, sin que haya conflictos con los nombres de los paquetes. Google Cloud

Te recomendamos que siempre definas un ámbito para tus repositorios. Si no especificas un ámbito al publicar o instalar un paquete, npm usa el registro predeterminado configurado, como el registro público de npm.

El ámbito de cada repositorio de Artifact Registry se define en el archivo de configuración .npmrc. Las mismas credenciales de autenticación se aplican en todos los repositorios.

En el siguiente ejemplo se muestra la configuración de dos repositorios de Artifact Registry en proyectos diferentes.

  • El ámbito de @blue es el repositorio del proyecto blue-project.
  • El ámbito de @green es el repositorio del proyecto 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

Una vez que te hayas autenticado en Artifact Registry, podrás subir un paquete a un repositorio concreto con el ámbito adecuado. Por ejemplo, el siguiente comando sube un paquete a blue-npm-repo en el proyecto blue-project:

npm publish @blue/blue-npm-repo

Para obtener más información sobre los scopes, consulta la documentación de npm.

Configurar npm

Los ajustes que se usan para la autenticación se almacenan en el archivo de configuración .npmrc. Puedes configurar un archivo .npmrc a nivel de proyecto, de usuario o global.

Cuando configura la autenticación con Artifact Registry, define los repositorios a los que quiere conectarse y las credenciales de autenticación.

Repositorios de Artifact Registry

Te recomendamos que definas la lista de repositorios en el archivo de configuración por proyecto. Este archivo suele estar en el mismo directorio que el archivo package.json de tu proyecto npm. El auxiliar de credenciales de Artifact Registry comprueba este archivo .npmrc de forma predeterminada en tus repositorios.

Si no quieres exponer las rutas de los repositorios en tu sistema de control de versiones, puedes hacer lo siguiente:

  • Añada el nombre de archivo .npmrc a la lista de archivos que debe ignorar su control de código fuente.
  • Almacena la lista de repositorios en tu archivo de configuración por usuario. El archivo .npmrc por usuario se encuentra en el directorio principal del usuario o se define con el parámetro --userconfig de npm o la variable de entorno $NPM_CONFIG_USERCONFIG. Los ajustes del archivo de configuración por usuario se aplican a todos tus proyectos, a menos que los anules a nivel de proyecto.
Credenciales de Artifact Registry

Almacena tus credenciales de Artifact Registry en el archivo de configuración por usuario para que otros usuarios no puedan acceder a ellas. Este archivo se encuentra en el directorio principal del usuario o se define con el parámetro --userconfig de npm o la variable de entorno $NPM_CONFIG_USERCONFIG.

El asistente de credenciales de Artifact Registry se almacena en el registro público de npm y no requiere autenticación para la instalación.

Debes conservar el registro predeterminado que ya esté configurado en el archivo .npmrc. El valor predeterminado suele ser el registro público de npm en https://registry.npmjs.org/.

Para comprobar el valor de registro predeterminado actual, ejecuta el comando:

npm get registry

Para obtener más información sobre los archivos de configuración de npm, consulta la documentación sobre el archivo de configuración de npm.