Mengelola paket Node.js

Artifact Registry mendukung paket Node.js yang Anda kelola dengan npm.

Ringkasan

Untuk memahami paket Node.js di Artifact Registry, Anda dapat mencoba quickstart.

Jika Anda sudah siap untuk mempelajari lebih lanjut, baca informasi berikut:

  1. Jika Anda baru menggunakan npm, baca konsep berikut:
  2. Buat repositori paket Node.js untuk paket Anda.
  3. Berikan izin ke akun yang akan terhubung dengan repositori. Akun layanan untuk integrasi umum dengan Artifact Registry memiliki izin default untuk repositori dalam project yang sama.
  4. Konfigurasi alat Anda:
  5. Pelajari cara mengelola paket.

Menggunakan cakupan

Cakupan npm adalah label untuk mengelompokkan paket. Cakupan diperlukan saat Anda menangani beberapa registry npm, termasuk:

  • Memublikasikan dan menginstal paket di registry yang berbeda tanpa perlu beralih dari satu registry ke registry lainnya. Misalnya, build Anda mungkin mencakup paket dari registry npm publik dan repositori Artifact Registry.
  • Memublikasikan paket yang sama ke beberapa repositori Artifact Registry di seluruh project Google Cloud, serta registry npm lainnya, tanpa konflik nama paket.

Sebaiknya selalu tetapkan cakupan untuk repositori Anda. Jika Anda tidak menentukan cakupan saat memublikasikan atau menginstal paket, npm akan menggunakan registry default yang dikonfigurasi, seperti registry npm publik.

Anda dapat menetapkan cakupan untuk setiap repositori Artifact Registry di file konfigurasi .npmrc. Kredensial yang sama untuk otentikasi diterapkan di seluruh repositori.

Contoh berikut menunjukkan konfigurasi untuk dua repositori Artifact Registry di project yang berbeda.

  • Cakupan @blue adalah untuk repositori dalam project blue-project.
  • Cakupan @green adalah untuk repositori dalam project 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

Setelah melakukan autentikasi ke Artifact Registry, Anda dapat mengupload paket ke repositori tertentu menggunakan cakupan yang sesuai. Misalnya, perintah berikut mengupload paket ke blue-npm-repo dalam blue-project project:

npm publish @blue/blue-npm-repo

Untuk informasi selengkapnya tentang cakupan, lihat dokumentasi npm

Mengonfigurasi npm

Setelan yang digunakan untuk autentikasi disimpan di file konfigurasi .npmrc. Anda dapat mengonfigurasi file .npmrc pada level project, pengguna, atau global.

Saat mengonfigurasi autentikasi dengan Artifact Registry, Anda harus menentukan repositori yang ingin Anda hubungkan dan kredensial untuk autentikasi.

Repositori Artifact Registry

Sebaiknya tetapkan daftar repositori di file konfigurasi per project. File ini biasanya berada di direktori yang sama dengan file package.json di project npm Anda. Helper kredensial Artifact Registry memeriksa repositori Anda secara default ke file .npmrc ini.

Jika tidak ingin mengekspos jalur repositori dalam sistem kontrol sumber, Anda dapat:

  • Tambahkan nama file .npmrc yang akan diabaikan oleh daftar file kontrol sumber Anda.
  • Sebagai gantinya, simpan daftar repositori dalam file confg per pengguna Anda. File .npmrc per pengguna berada di direktori beranda pengguna Anda, atau disetel dengan parameter --userconfig npm atau variabel lingkungan $NPM_CONFIG_USERCONFIG. Setelan dalam file konfigurasi per pengguna berlaku untuk semua project Anda, kecuali jika Anda menggantinya di level project.
Kredensial Artifact Registry

Simpan kredensial Anda untuk Artifact Registry di file konfigurasi per pengguna agar tidak tersedia untuk pengguna lain. File ini berada di direktori beranda pengguna, atau disetel dengan parameter --userconfig npm atau variabel lingkungan $NPM_CONFIG_USERCONFIG.

Helper kredensial Artifact Registry disimpan di registry npm publik dan tidak memerlukan autentikasi untuk penginstalan.

Anda harus mempertahankan registry default yang ada yang telah dikonfigurasi dalam file .npmrc. Defaultnya biasanya ditetapkan ke registry npm publik di https://registry.npmjs.org/.

Untuk memeriksa nilai registry default saat ini, jalankan perintah:

npm get registry

Untuk mengetahui informasi selengkapnya tentang file konfigurasi npm, baca dokumentasi file konfigurasi npm.