Menyimpan paket Node.js di Artifact Registry

Panduan memulai ini menunjukkan cara menyiapkan repositori paket Node.js Artifact Registry pribadi dan mengupload paket ke dalamnya.

Sebelum memulai

  1. Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
  2. Di konsol Google Cloud, pada halaman pemilih project, pilih atau buat project Google Cloud.

    Buka pemilih project

  3. Make sure that billing is enabled for your Google Cloud project.

  4. Aktifkan API Artifact Registry.

    Mengaktifkan API

  5. Install the Google Cloud CLI.
  6. To initialize the gcloud CLI, run the following command:

    gcloud init
  7. Di konsol Google Cloud, pada halaman pemilih project, pilih atau buat project Google Cloud.

    Buka pemilih project

  8. Make sure that billing is enabled for your Google Cloud project.

  9. Aktifkan API Artifact Registry.

    Mengaktifkan API

  10. Install the Google Cloud CLI.
  11. To initialize the gcloud CLI, run the following command:

    gcloud init
  12. Instal PowerShell, jika Anda ingin terhubung ke repositori paket Node.js dari Windows.

Meluncurkan Cloud Shell

Dalam panduan memulai ini, Anda akan menggunakan Cloud Shell, yang merupakan lingkungan shell untuk mengelola resource yang dihosting di Google Cloud.

Cloud Shell dilengkapi dengan Google Cloud CLI. Gcloud CLI menyediakan antarmuka command line utama untuk Google Cloud.

Meluncurkan Cloud Shell:

  1. Buka Konsol Google Cloud.

    Google Cloud console

  2. Di toolbar Konsol Google Cloud, klik Activate Cloud Shell:

Sesi Cloud Shell akan terbuka di dalam frame yang lebih rendah di konsol. Anda menggunakan shell ini untuk menjalankan perintah gcloud.

Membuat repositori paket Node.js

Buat repositori untuk artefak Node.js Anda.

  1. Membuat repositori.

    Konsol

    1. Buka halaman Repositories di Konsol Google Cloud.

      Buka halaman Repositori

    2. Klik Create Repository.

    3. Tentukan quickstart-nodejs-repo sebagai nama repositori.

    4. Pilih npm sebagai format dan Standard sebagai modenya.

    5. Di bawah Jenis Lokasi, pilih Region dan kemudian pilih lokasi us-central1.

    6. Klik Create.

    Repositori ditambahkan ke daftar repositori

    gcloud

    1. Jalankan perintah berikut untuk membuat repositori paket Node.js baru bernama quickstart-nodejs-repo di lokasi us-central1 dengan deskripsi "Repositori Node.js".

      gcloud artifacts repositories create quickstart-nodejs-repo --repository-format=npm \
      --location=us-central1 --description="Node.js package repository"
      
    2. Jalankan perintah berikut untuk memverifikasi bahwa repositori Anda telah dibuat.

      gcloud artifacts repositories list
      

    Untuk mengetahui informasi selengkapnya tentang perintah Artifact Registry, jalankan perintah gcloud artifacts.

  2. Untuk menyederhanakan perintah gcloud, tetapkan repositori default ke quickstart-nodejs-repo dan lokasi default ke us-central1. Setelah nilai ditetapkan, Anda tidak perlu menentukannya dalam perintah gcloud yang memerlukan repositori atau lokasi.

    Untuk menetapkan repositori, jalankan perintah:

    gcloud config set artifacts/repository quickstart-nodejs-repo
    

    Untuk menetapkan lokasi, jalankan perintah:

    gcloud config set artifacts/location us-central1
    

    Untuk mengetahui informasi lebih lanjut tentang perintah ini, baca dokumentasi gcloud config set.

Konfigurasi npm

Untuk mengupload dan mendownload paket, Anda harus mengonfigurasi project npm dengan setelan untuk mengautentikasi dengan repositori yang Anda buat. Untuk panduan memulai ini, Anda akan mengupload paket sederhana, lalu menginstalnya dalam paket kedua sebagai dependensi.

  1. Download paket emoji-regex, paket sederhana yang menyediakan ekspresi reguler untuk mencocokkan semua simbol dan urutan emoji.

    npm pack emoji-regex
    

    Perintah ini akan mendownload arsip paket.

  2. Ekstrak arsip ke direktori emoji-regex. Perintah berikut ditujukan untuk arsip emoji-regex versi 10.1.0:

    mkdir emoji-regex && tar xvf emoji-regex-10.1.0.tgz -C emoji-regex --strip-components 1
    
  3. Buat paket npm kedua yang akan Anda gunakan untuk menginstal paket emoji-regex dari Artifact Registry. Untuk paket ini, gunakan perintah npm init untuk membuat paket dasar.

    mkdir npm-package2
    cd npm-package2
    
    npm init -y
    

    Saat diminta, terima nilai default.

  4. Konfigurasikan project emoji-regex dan npm-package2 untuk melakukan autentikasi dengan repositori Artifact Registry yang Anda buat.

    1. Jalankan perintah berikut. Perintah tersebut menampilkan setelan konfigurasi yang akan ditambahkan ke file konfigurasi npm Anda.

      gcloud artifacts print-settings npm --scope=@quickstart
      

      Cakupan quickstart dikaitkan dengan repositori Anda. Jika Anda menyertakan cakupan dalam perintah untuk memublikasikan atau menginstal paket, npm akan menggunakan repositori Anda. Jika Anda memublikasikan atau menginstal paket tanpa cakupan, repositori default yang dikonfigurasi Anda akan digunakan. Untuk informasi lebih lanjut, baca ringkasan Node.js.

      Output perintah gcloud terlihat seperti contoh berikut. PROJECT adalah project ID Google Cloud Anda.

      @quickstart:registry=https://us-central1-npm.pkg.dev/PROJECT/quickstart-nodejs-repo/
      //us-central1-npm.pkg.dev/PROJECT/quickstart-nodejs-repo/:always-auth=true
      
    2. Tambahkan setelan konfigurasi dari langkah sebelumnya ke file .npmrc project di setiap project npm. File di direktori yang sama dengan file package.json.

      Untuk mempelajari file .npmrc lebih lanjut, lihat ringkasan Node.js.

      Setiap repositori paket Node.js Artifact Registry dikaitkan dengan https://LOCATION-npm.pkg.dev/PROJECT/REPOSITORY endpoint registry npm. Jika Anda membuat repositori paket Node.js Artifact Registry lain, npm akan berinteraksi dengan repositori tersebut sebagai registry terpisah dengan cakupannya sendiri.

  5. Edit package.json di project emoji-regex dan npm-package2.

    1. Pastikan nilai untuk name menyertakan cakupan quickstart.

      • Untuk emoji-regex:
      "name": "@quickstart/emoji-regex"
      
      • Untuk npm-package2:
      "name": "@quickstart/npm-package2"
      
    2. Di bagian scripts, tambahkan skrip untuk google-artifactregistry-auth, library klien yang memperbarui kredensial untuk repositori Artifact Registry.

      "scripts": {
        "artifactregistry-login": "npx google-artifactregistry-auth"
      }
      

Mengupload paket ke repositori

  1. Muat ulang token akses untuk terhubung ke repositori.

    npm run artifactregistry-login
    
  2. Tambahkan paket Anda ke repositori. Anda dapat menggunakan perintah npm atau yarn.

    npm publish
    
    yarn publish
    

Melihat paket di repositori

Untuk memastikan bahwa paket Anda telah ditambahkan ke repositori:

Konsol

  1. Buka halaman Repositories di Konsol Google Cloud.

    Buka halaman Repositori

  2. Dalam daftar repositori, klik repositori quickstart-nodejs-repo.

    Halaman Packages mencantumkan paket dalam repositori.

  3. Klik paket untuk melihat versi paket.

gcloud

Untuk menampilkan daftar gambar dalam repositori quickstart-nodejs-repo default, jalankan perintah berikut:

 gcloud artifacts packages list

Untuk melihat versi paket, jalankan perintah berikut:

gcloud artifacts versions list --package=PACKAGE

Dengan PACKAGE adalah ID paket.

Menginstal paket

Instal paket emoji-regex dari repositori Artifact Registry Anda di npm-package2.

Dalam direktori npm-package2, jalankan perintah npm install atau yarn add:

npm install @quickstart/emoji-regex
yarn add @quickstart/emoji-regex

Perintah ini menginstal paket emoji-regex dalam project npm-package2. Kode ini juga mengupdate package.json untuk menetapkan emoji-regex sebagai dependensi.

"dependencies": {
  "@quickstart/emoji-regex": "^10.1.0"
}

Pembersihan

Agar akun Google Cloud Anda tidak dikenakan biaya untuk resource yang digunakan pada halaman ini, ikuti langkah-langkah berikut.

Sebelum menghapus repositori, pastikan paket apa pun yang ingin Anda simpan tersedia di lokasi lain.

Untuk menghapus repositori:

Konsol

  1. Buka halaman Repositories di Konsol Google Cloud.

    Buka halaman Repositori

  2. Dalam daftar repositori, pilih repositori quickstart-nodejs-repo.

  3. Klik Delete.

gcloud

  1. Untuk menghapus repositori quickstart-nodejs-repo, jalankan perintah berikut:

    gcloud artifacts repositories delete quickstart-nodejs-repo
    
  2. Jika Anda ingin menghapus repositori default dan setelan lokasi yang Anda konfigurasikan untuk konfigurasi gcloud aktif, jalankan perintah berikut:

    gcloud config unset artifacts/repository
    gcloud config unset artifacts/location
    

Langkah selanjutnya