Mengelola paket RPM

Halaman ini menjelaskan cara menambahkan, melihat, dan menghapus paket RPM di repositori Yum. Repositori Yum Artifact Registry mendukung Yum dan DNF.

Sebelum memulai

  1. Jika repositori Yum target tidak ada, buat repositori baru.
  2. Konfigurasi VM untuk mengakses repositori.
  3. (Opsional) Konfigurasikan default untuk perintah gcloud.
  4. Pastikan nama paket Anda dalam metadata memenuhi panduan penamaan paket Fedora dan panduan pembuatan versi paket Fedora.

Menambahkan paket

Mode repositori: standar

Anda harus memiliki izin baca dan tulis agar repositori dapat menambahkan paket.

Anda dapat mengupload paket ke repositori menggunakan Google Cloud CLI, atau Anda dapat mengimpor paket yang disimpan di Cloud Storage.

Jika Anda mem-build paket menggunakan Cloud Build, build dapat menyimpan paket di Cloud Storage untuk Anda impor.

Operasi impor atau upload yang sangat lama dapat melebihi periode habis masa berlaku token yang digunakan gcloud CLI untuk memanggil API. Jika Anda memiliki paket dalam jumlah yang sangat besar untuk ditambahkan, sebaiknya tambahkan dalam batch yang lebih kecil sehingga setiap operasi upload atau impor dapat diselesaikan dalam waktu yang lebih singkat. Lihat dokumentasi pemecahan masalah paket OS untuk mengetahui informasi selengkapnya.

Upload langsung

Gunakan perintah gcloud artifacts yum upload untuk mengupload paket ke repositori Yum:

gcloud artifacts yum upload REPOSITORY \
    --location=LOCATION \
    --source=PACKAGES

Ganti nilai berikut:

  • REPOSITORY adalah nama repositori Artifact Registry.
  • LOCATION adalah lokasi repositori regional atau multi-regional.
  • PACKAGES adalah jalur ke paket.

Misalnya, untuk mengupload paket my-package.rpm ke repositori Yum my-repo di lokasi us-west1, jalankan:

gcloud artifacts yum upload my-repo \
    --location=us-west1 \
    --source=my-package.rpm

Cloud Storage

  1. Upload paket ke Cloud Storage dengan salah satu cara berikut:
    • Mengupload paket langsung ke bucket Cloud Storage
    • Mem-build paket dengan Cloud Build dan menyimpannya di bucket
  2. Jalankan perintah berikut:
    gcloud artifacts yum import REPOSITORY \
      --location=LOCATION \
      --gcs-source=PACKAGES
    

    Ganti nilai berikut:

    • REPOSITORY adalah nama repositori Artifact Registry.
    • LOCATION adalah lokasi repositori regional atau multi-regional.
    • PACKAGES adalah daftar paket yang dipisahkan koma di Cloud Storage. Untuk mengupload semua paket dari direktori, gunakan karakter pengganti direktori (*) atau gunakan karakter pengganti direktori rekursif (**) untuk mengupload semua paket di semua subdirektori.

    Misalnya, perintah berikut mengupload paket package.rpm dan semua paket di direktori directory dari bucket my-bucket ke repositori Yum my-repo di lokasi us-west1:

    gcloud artifacts yum import my-repo \
      --location=us-west1 \
      --gcs-source=gs://my-bucket/path/to/package.rpm,gs://my-bucket/directory*
    

Setelah operasi upload atau impor selesai, Anda dapat menggunakan konsolGoogle Cloud atau gcloud CLI untuk melihat paket di repositori dan mengonfirmasi bahwa paket tersebut berhasil diupload.

Jika Anda memiliki repositori besar dengan banyak paket, mungkin perlu waktu beberapa menit untuk membuat ulang indeks paket sehingga paket baru dapat dilihat oleh klien Yum.

Melihat paket

Mode repositori: standar, jarak jauh (pratinjau)

Untuk melihat paket, Anda harus memiliki izin dalam peran Artifact Registry Reader. Artifact Registry tidak mencantumkan file di dalam paket.

Untuk melihat paket dan versi paket menggunakan konsol Google Cloud atau gcloud:

Konsol

  1. Buka halaman Repositori di konsol Google Cloud .

    Buka halaman Repositori

  2. Di daftar repositori, klik repositori yang sesuai.

    Halaman Paket mencantumkan paket di repositori.

  3. Klik paket untuk melihat versi paket.

gcloud

Untuk menampilkan daftar paket dalam repositori, jalankan perintah berikut:

gcloud artifacts packages list [--repository=REPOSITORY] [--location=LOCATION]

Ganti kode berikut:

  • REPOSITORY adalah nama repositori. Jika Anda mengonfigurasi repositori default, Anda dapat menghapus tanda ini untuk menggunakan default.
  • LOCATION adalah lokasi repositori regional atau multi-regional. Jika mengonfigurasi lokasi default, Anda dapat menghilangkan tanda ini untuk menggunakan default.

Untuk melihat versi paket, jalankan perintah berikut:

gcloud artifacts versions list --package=PACKAGE \
    [--repository=REPOSITORY] [--location=LOCATION]

Ganti kode berikut:

  • PACKAGE adalah ID paket atau ID yang sepenuhnya memenuhi syarat untuk paket.
  • REPOSITORY adalah nama repositori. Jika Anda mengonfigurasi repositori default, Anda dapat menghapus tanda ini untuk menggunakan default.
  • LOCATION adalah lokasi repositori regional atau multi-regional. Gunakan flag ini untuk melihat repositori di lokasi tertentu. Jika Anda mengonfigurasi lokasi default, Anda dapat menghilangkan tanda ini untuk menggunakan default.

Menginstal paket

Mode repositori: standar, jarak jauh (pratinjau)

Sebelum menginstal paket, pastikan Anda telah mengonfigurasi VM untuk menginstal paket dari repositori Artifact Registry.

Untuk menginstal paket, jalankan perintah berikut:

sudo yum --enablerepo=REPOSITORY install PACKAGE

Ganti nilai berikut:

  • PACKAGE adalah nama paket
  • REPOSITORY adalah nama repositori yang dikonfigurasi dalam file .repo.

Misalnya, untuk menginstal paket my-package dari repositori my-repo, jalankan perintah:

sudo yum --enablerepo=my-repo install my-package

Menghapus paket

Mode repositori: standar

Sebelum menghapus paket atau versi paket, pastikan Anda telah menyampaikan atau mengatasi dependensi penting apa pun di dalamnya.

Untuk menghapus paket:

Konsol

  1. Buka halaman Repositori di konsol Google Cloud .

    Buka halaman Repositori

  2. Di daftar repositori, klik repositori yang sesuai.

    Halaman Paket mencantumkan paket di repositori.

  3. Pilih paket yang ingin dihapus.

  4. Klik HAPUS.

  5. Di kotak dialog konfirmasi, klik DELETE.

gcloud

Jalankan perintah berikut:

gcloud artifacts packages delete PACKAGE \
    [--repository=REPOSITORY] [--location=LOCATION] [--async]

Ganti kode berikut:

  • PACKAGE adalah nama paket dalam repositori.
  • REPOSITORY adalah nama repositori. Jika mengonfigurasi repositori default, Anda dapat menghapus tanda ini untuk menggunakan default.
  • LOCATION adalah lokasi repositori regional atau multi-regional. Gunakan flag ini untuk melihat repositori di lokasi tertentu. Jika Anda mengonfigurasi lokasi default, Anda dapat menghilangkan tanda ini untuk menggunakan default.

Flag --async menyebabkan perintah segera ditampilkan, tanpa menunggu operasi yang sedang berlangsung selesai.

Untuk menghapus versi paket:

Konsol

  1. Buka halaman Repositori di konsol Google Cloud .

    Buka halaman Repositori

  2. Di daftar repositori, klik repositori yang sesuai.

    Halaman Paket mencantumkan paket di repositori.

  3. Klik paket untuk melihat versi paket tersebut.

  4. Pilih versi yang ingin dihapus.

  5. Klik HAPUS.

  6. Di kotak dialog konfirmasi, klik DELETE.

gcloud

Jalankan perintah berikut:

gcloud artifacts versions delete VERSION \
    --package=PACKAGE \
    [--repository=REPOSITORY] [--location=LOCATION] \
    [--async]

Ganti kode berikut:

  • VERSION adalah nama versi yang akan dihapus.
  • PACKAGE adalah nama paket dalam repositori.
  • REPOSITORY adalah nama repositori. Jika mengonfigurasi repositori default, Anda dapat menghapus tanda ini untuk menggunakan default.
  • LOCATION adalah lokasi repositori regional atau multi-regional. Gunakan flag ini untuk melihat repositori di lokasi tertentu. Jika Anda mengonfigurasi lokasi default, Anda dapat menghilangkan tanda ini untuk menggunakan default.

Flag --async menyebabkan perintah segera ditampilkan, tanpa menunggu operasi yang sedang berlangsung selesai.

Untuk repositori besar, mungkin perlu waktu beberapa menit untuk membuat ulang indeks paket Yum agar mencerminkan penghapusan.

Langkah selanjutnya