Gestione dei pacchetti Node.js

Artifact Registry supporta i pacchetti Node.js gestiti con npm.

Panoramica

Per acquisire familiarità con i pacchetti Node.js in Artifact Registry, puoi provare la quickstart.

Per saperne di più, leggi le seguenti informazioni:

  1. Se non hai mai utilizzato npm, leggi i seguenti concetti:
  2. Crea un repository di pacchetti Node.js per i tuoi pacchetti.
  3. Concedi le autorizzazioni all'account che si connetterà al repository. Gli account di servizio per le integrazioni comuni con Artifact Registry dispongono di autorizzazioni predefinite per i repository nello stesso progetto.
  4. Configura i tuoi strumenti:
  5. Scopri di più sulla gestione dei pacchetti.

Utilizzo degli ambiti

Un ambito npm è un'etichetta per raggruppare i pacchetti. Gli ambiti sono necessari quando lavori con più registri npm, tra cui:

  • Pubblicazione e installazione di pacchetti in registri diversi senza la necessità di passare da un registro all'altro. Ad esempio, le tue build potrebbero includere pacchetti sia del registry npm pubblico sia di un repository Artifact Registry.
  • Pubblicazione degli stessi pacchetti in più repository Artifact Registry nei progetti Google Cloud e in altri registri npm, senza conflitti di nomi dei pacchetti.

Ti consigliamo di impostare sempre un ambito per i repository. Se non specifichi un ambito quando pubblichi o installi il pacchetto, npm utilizza il registro predefinito configurato, ad esempio il registro npm pubblico.

Puoi impostare l'ambito per ogni repository Artifact Registry nel file di configurazione .npmrc. A tutti i repository si applicano le stesse credenziali per l'autenticazione.

L'esempio seguente mostra la configurazione per due repository Artifact Registry in progetti diversi.

  • L'ambito @blue è per il repository nel progetto blue-project.
  • L'ambito @green è per il repository nel progetto 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

Dopo aver eseguito l'autenticazione in Artifact Registry, puoi caricare un pacchetto in un determinato repository utilizzando l'ambito appropriato. Ad esempio, il seguente comando carica un pacchetto in blue-npm-repo nel progetto blue-project:

npm publish @blue/blue-npm-repo

Per ulteriori informazioni sugli ambiti, consulta la documentazione su npm

Configurazione di npm

Le impostazioni utilizzate per l'autenticazione vengono memorizzate nel file di configurazione .npmrc. Puoi configurare un file .npmrc a livello di progetto, utente o globale.

Quando configuri l'autenticazione con Artifact Registry, definisci i repository a cui vuoi connetterti e le credenziali per l'autenticazione.

Repository Artifact Registry

Ti consigliamo di impostare l'elenco dei repository nel file di configurazione per progetto. Questo file si trova solitamente nella stessa directory del file package.json nel progetto npm. Per impostazione predefinita, l'helper per le credenziali di Artifact Registry controlla questo file .npmrc per individuare i tuoi repository.

Se non vuoi esporre i percorsi dei repository nel sistema di controllo del codice sorgente, puoi:

  • Aggiungi il nome file .npmrc all'elenco di file da ignorare del controllo del codice sorgente.
  • Archivia invece l'elenco dei repository nel file di configurazione per utente. Il file .npmrc per utente si trova nella home directory dell'utente oppure è impostato con il parametro --userconfig npm o la variabile di ambiente $NPM_CONFIG_USERCONFIG. Le impostazioni nel file di configurazione per utente si applicano a tutti i progetti, a meno che non le sostituisci a livello di progetto.
Credenziali di Artifact Registry

Archivia le tue credenziali per Artifact Registry nel file di configurazione per utente in modo che non siano disponibili ad altri utenti. Questo file si trova nella home directory dell'utente o è impostato con il parametro npm --userconfig o la variabile di ambiente $NPM_CONFIG_USERCONFIG.

L'helper per le credenziali di Artifact Registry è archiviato nel registro npm pubblico e non richiede l'autenticazione per l'installazione.

Devi conservare l'eventuale registro predefinito esistente configurato nel file .npmrc. Il valore predefinito è in genere impostato sul registry npm pubblico all'indirizzo https://registry.npmjs.org/.

Per controllare il valore predefinito attuale del Registro di sistema, esegui questo comando:

npm get registry

Per ulteriori informazioni sui file di configurazione npm, consulta la documentazione relativa al file di configurazione npm.