Gestire i pacchetti Node.js

Artifact Registry supporta i pacchetti Node.js che gestisci con npm.

Panoramica

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

Quando vuoi saperne di più, leggi le seguenti informazioni:

  1. Se non hai dimestichezza con 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 gli 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ù registry npm, tra cui:

  • Pubblicazione e installazione di pacchetti in registri diversi senza dover cambiare registry. Ad esempio, le build potrebbero includere pacchetti sia dal registry npm pubblico sia da un repository Artifact Registry.
  • Pubblicazione degli stessi pacchetti in più repository Artifact Registry in Google Cloud progetti, nonché in altri registry npm, senza conflitti di nomi dei pacchetti.

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

Imposti l'ambito per ogni repository Artifact Registry nel .npmrc file di configurazione. Le stesse credenziali per l'autenticazione si applicano in tutti i repository.

L'esempio seguente mostra la configurazione di 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 comando seguente carica un pacchetto in blue-npm-repo nel progetto blue-project:

npm publish @blue/blue-npm-repo

Per saperne di più sugli ambiti, consulta la documentazione di npm

Configurazione di npm

Le impostazioni utilizzate per l'autenticazione sono 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. Di solito questo file si trova nella stessa directory del file package.json nel progetto npm. Lo strumento di assistenza per le credenziali di Artifact Registry controlla questo .npmrc file per i tuoi repository per impostazione predefinita.

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

  • Aggiungi il nome file .npmrc all'elenco dei file da ignorare del controllo del codice sorgente.
  • Memorizza l'elenco dei repository nel file confg per utente. Il file .npmrc per utente si trova nella home directory dell'utente o è impostato con il parametro --userconfig di 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

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

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

Devi conservare qualsiasi registry predefinito esistente configurato nel file .npmrc. In genere, il valore predefinito è impostato sul registry npm pubblico all'indirizzo https://registry.npmjs.org/.

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

npm get registry

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