Halaman ini menjelaskan cara membuat repositori standar Artifact Registry.
Repositori standar adalah repositori untuk artefak pribadi Anda. Anda mengupload artefak ke dan mendownload artefak langsung dari repositori ini.
Mode repositori berikut juga tersedia untuk beberapa format artefak:
- Repositori jarak jauh menyimpan artefak dari sumber eksternal seperti Docker Hub, Maven Central, atau PyPI.
- Repositori virtual berfungsi sebagai satu titik akses untuk mendownload, menginstal, atau men-deploy artefak yang ada di repositori upstream standar atau jarak jauh.
Setiap repositori dapat berisi artefak untuk satu format yang didukung.
Sebelum memulai
- Aktifkan Artifact Registry, termasuk mengaktifkan Artifact Registry API dan menginstal Google Cloud CLI.
- (Opsional) Konfigurasi default untuk perintah gcloud.
- Jika Anda memerlukan kunci enkripsi yang dikelola pelanggan (CMEK) untuk mengenkripsi konten repositori, buat dan aktifkan kunci di Cloud KMS untuk repositori.
Peran yang diperlukan
Untuk mendapatkan izin yang
diperlukan guna membuat repositori,
minta administrator Anda untuk memberi Anda
peran IAM Administrator Artifact Registry (roles/artifactregistry.admin
)
di project Google Cloud .
Untuk mengetahui informasi selengkapnya tentang cara memberikan peran, lihat Mengelola akses ke project, folder, dan organisasi.
Anda mungkin juga bisa mendapatkan izin yang diperlukan melalui peran khusus atau peran bawaan lainnya.
Membuat repositori standar
Saat membuat repositori, Anda harus mengonfigurasi setelan berikut yang tidak dapat diubah setelah repositori dibuat:
- Format artefak.
- Mode repositori, jika beberapa mode tersedia untuk format yang dipilih.
- Lokasi repositori.
- Enkripsi dengan Google-owned and Google-managed encryption keys atau kunci enkripsi yang dikelola pelanggan. Artifact Registry menggunakan Google-owned and Google-managed encryption keys secara default.
Artifact Registry menerapkan batasan kebijakan organisasi yang mewajibkan CMEK untuk mengenkripsi resource atau membatasi kunci Cloud KMS yang dapat digunakan untuk perlindungan CMEK.
Membuat repositori menggunakan konsol Google Cloud
Buka halaman Repositories di konsol Google Cloud .
Klik Create Repository.
Tentukan nama repositori. Untuk setiap lokasi repositori dalam project, nama repositori harus unik.
Pilih format repositori.
Jika beberapa mode repositori tersedia, pilih Standar.
Maven saja: Konfigurasi kebijakan versi.
Pilih kebijakan versi:
- Tidak ada - Tidak ada kebijakan versi. Simpan paket rilis dan snapshot.
- Rilis - Hanya menyimpan paket rilis.
- Snapshot - Hanya menyimpan paket snapshot.
Jika Anda ingin repositori snapshot menerima snapshot tidak unik yang menimpa versi yang ada di repositori, pilih Izinkan penimpaan snapshot.
Di bagian Jenis Lokasi, pilih lokasi untuk repositori:
Pilih jenis lokasi: Region atau Multi-Region. Daftar lokasi akan berubah untuk mencerminkan pilihan Anda.
Di daftar Region atau Multi-region, pilih lokasi.
Untuk mengetahui informasi tentang jenis lokasi dan lokasi yang didukung, lihat Lokasi repositori
Tambahkan deskripsi untuk repositori. Deskripsi membantu mengidentifikasi tujuan repositori dan jenis artefak yang ada di dalamnya.
Jangan sertakan data sensitif, karena deskripsi repositori tidak dienkripsi.
Jika Anda ingin menggunakan label untuk mengatur repositori, klik Tambahkan Label dan masukkan pasangan nilai kunci untuk label. Anda dapat menambahkan, mengedit, atau menghapus label setelah membuat repositori.
Di bagian Enkripsi, pilih mekanisme enkripsi untuk repositori.
- Google-managed encryption key - Mengenkripsi konten repositori dengan Google-owned and Google-managed encryption key.
Kunci yang dikelola pelanggan - Enkripsi konten repositori dengan kunci yang Anda kontrol melalui Cloud Key Management Service. Untuk mengetahui petunjuk penyiapan kunci, lihat Menyiapkan CMEK untuk repositori.
Untuk repositori Docker, setelan Tag image yang tidak dapat diubah mengonfigurasi repositori Anda untuk menggunakan tag image yang selalu mengarah ke ringkasan image yang sama. Pengguna dengan peran administrator Artifact Registry dapat mengubah setelan ini setelah repositori dibuat.
- Secara default, setelan ini dinonaktifkan. Tag gambar dapat berubah, yang berarti ringkasan gambar yang ditunjuk oleh tag dapat berubah.
- Jika setelan ini diaktifkan, tag gambar tidak dapat diubah. Tag harus selalu menunjuk ke ringkasan gambar yang sama. Untuk mempelajari lebih lanjut tag image yang dapat diubah dan tidak dapat diubah, lihat Versi image container.
Jika Anda ingin menggunakan kebijakan pembersihan untuk menghapus artefak yang tidak digunakan, di bagian Kebijakan pembersihan:
- Pilih Uji coba untuk menguji kebijakan Anda sebelum menerapkannya.
- Klik Tambahkan kebijakan untuk menambahkan kebijakan penyimpanan atau penghapusan ke repositori Anda.
- Beri kebijakan pembersihan Anda nama deskriptif di kolom Nama.
Di bagian Jenis kebijakan, pilih salah satu opsi berikut:
- Penghapusan bersyarat: menghapus artefak berdasarkan kondisi yang Anda tentukan.
- Penyimpanan bersyarat: menyimpan artefak berdasarkan kondisi yang Anda tentukan.
Pertahankan versi terbaru: Mempertahankan sejumlah versi terbaru per paket.
Untuk mengetahui detail selengkapnya tentang kebijakan pembersihan, lihat Mengonfigurasi kebijakan pembersihan.
Di bagian Artifact Analysis, pilih setelan pemindaian kerentanan:
Diaktifkan - Izinkan pemindaian di repositori ini. Container Scanning API harus diaktifkan di project Anda.
Saat Anda mengaktifkan Container Scanning API, penagihan akan segera dimulai. Setelah Anda mengaktifkan Container Scanning API di sebuah project, pemindaian kerentanan akan diaktifkan untuk semua repositori baru dan yang sudah ada. Saat Anda mengirim image ke Artifact Registry, image tersebut akan otomatis dipindai oleh Artifact Analysis.
Dinonaktifkan - Mencegah pemindaian di repositori ini. Jika Container Scanning API diaktifkan di project Anda, pemindaian akan berlanjut di repositori lain; repositori ini akan dikecualikan.
Untuk mengetahui informasi selengkapnya tentang opsi pemindaian kerentanan, lihat Mengaktifkan dan menonaktifkan pemindaian otomatis.
Klik Buat.
Artifact Registry membuat repositori dan menambahkannya ke daftar repositori.
Setelah Anda membuat repositori:
- Memberikan akses ke repositori.
Konfigurasi Docker, pengelola paket, dan klien pihak ketiga lainnya untuk mengautentikasi ke repositori.
Membuat repositori menggunakan Google Cloud CLI
Jalankan perintah untuk membuat repositori baru.
Apt
gcloud artifacts repositories create REPOSITORY \ --repository-format=apt \ --location=LOCATION \ --description="DESCRIPTION" \ --kms-key=KMS-KEY \ --async
Ganti kode berikut:
REPOSITORY
: nama repositori. Untuk setiap lokasi repositori dalam project, nama repositori harus unik.LOCATION
: lokasi regional atau multi-regional untuk repositori. Anda dapat menghapus flag ini jika Anda menetapkan default. Untuk melihat daftar lokasi yang didukung, jalankan perintah:gcloud artifacts locations list
DESCRIPTION
: deskripsi repositori. Jangan sertakan data sensitif, karena deskripsi repositori tidak dienkripsi.KMS-KEY
: jalur lengkap ke kunci enkripsi Cloud KMS, jika Anda menggunakan kunci enkripsi yang dikelola pelanggan untuk mengenkripsi konten repositori. Jalur dalam format:projects/KMS-PROJECT/locations/KMS-LOCATION/keyRings/KEY-RING/cryptoKeys/KEY
Ganti kode berikut:
KMS-PROJECT
: project tempat kunci Anda disimpan.KMS-LOCATION
: lokasi kunci.KEY-RING
: nama key ring.KEY
: nama kunci.
--async
: langsung ditampilkan, tanpa menunggu operasi yang sedang berlangsung selesai.
Docker
gcloud artifacts repositories create REPOSITORY \
--repository-format=docker \
--location=LOCATION \
--description="DESCRIPTION" \
--kms-key=KMS-KEY \
--immutable-tags \
--async \
--disable-vulnerability-scanning
Ganti kode berikut:
REPOSITORY
: nama repositori. Untuk setiap lokasi repositori dalam project, nama repositori harus unik.LOCATION
: lokasi regional untuk repositori. Anda dapat menghapus tanda ini jika Anda menetapkan lokasi default. Untuk melihat daftar lokasi yang didukung, jalankan perintah:gcloud artifacts locations list
DESCRIPTION
: deskripsi repositori. Jangan sertakan data sensitif, karena deskripsi repositori tidak dienkripsi.KMS-KEY
: jalur lengkap ke kunci enkripsi Cloud KMS, jika Anda menggunakan kunci enkripsi yang dikelola pelanggan untuk mengenkripsi konten repositori. Jalur dalam format:projects/KMS-PROJECT/locations/KMS-LOCATION/keyRings/KEY-RING/cryptoKeys/KEY
Ganti kode berikut:
KMS-PROJECT
: project tempat kunci Anda disimpan.KMS-LOCATION
: lokasi kunci.KEY-RING
: nama key ring.KEY
: nama kunci.
--immutable-tags
adalah tanda opsional yang mengonfigurasi repositori Anda untuk menggunakan tag yang selalu mengarah ke ringkasan image yang sama.Secara default, saat tanda
--immutable-tags
tidak diteruskan, tag dapat dipindahkan ke ringkasan gambar lain. Untuk mempelajari lebih lanjut tag image yang tidak dapat diubah dan dapat diubah, lihat Versi image container.--async
segera ditampilkan, tanpa menunggu operasi yang sedang berlangsung selesai.
--disable-vulnerability-scanning
: adalah flag opsional yang mengonfigurasi repositori Anda untuk menonaktifkan pemindaian kerentanan otomatis.--allow-vulnerability-scanning
: adalah flag opsional yang mengonfigurasi repositori Anda untuk mengizinkan pemindaian kerentanan otomatis. Untuk mengetahui informasi selengkapnya, lihat Mengaktifkan atau menonaktifkan pemindaian otomatis.
Generik
gcloud artifacts repositories create REPOSITORY \ --repository-format=generic \ --location=LOCATION \ --description="DESCRIPTION" \ --kms-key=KMS-KEY \ --async
Ganti kode berikut:
REPOSITORY
: nama repositori. Untuk setiap lokasi repositori dalam project, nama repositori harus unik.LOCATION
: lokasi regional atau multi-regional untuk repositori. Anda dapat menghapus flag ini jika Anda menetapkan default. Untuk melihat daftar lokasi yang didukung, jalankan perintah:gcloud artifacts locations list
DESCRIPTION
: deskripsi repositori. Jangan sertakan data sensitif, karena deskripsi repositori tidak dienkripsi.KMS-KEY
: jalur lengkap ke kunci enkripsi Cloud KMS, jika Anda menggunakan kunci enkripsi yang dikelola pelanggan untuk mengenkripsi konten repositori. Jalur dalam format:projects/KMS-PROJECT/locations/KMS-LOCATION/keyRings/KEY-RING/cryptoKeys/KEY
Ganti kode berikut:
KMS-PROJECT
: project tempat kunci Anda disimpan.KMS-LOCATION
: lokasi kunci.KEY-RING
: nama key ring.KEY
: nama kunci.
--async
: langsung ditampilkan, tanpa menunggu operasi yang sedang berlangsung selesai.
Go
gcloud artifacts repositories create REPOSITORY \ --repository-format=go \ --location=LOCATION \ --description="DESCRIPTION" \ --kms-key=KMS-KEY \ --async
Ganti kode berikut:
REPOSITORY
: nama repositori. Untuk setiap lokasi repositori dalam project, nama repositori harus unik.LOCATION
: lokasi regional atau multi-regional untuk repositori. Anda dapat menghapus flag ini jika Anda menetapkan default. Untuk melihat daftar lokasi yang didukung, jalankan perintah:gcloud artifacts locations list
DESCRIPTION
: deskripsi repositori. Jangan sertakan data sensitif, karena deskripsi repositori tidak dienkripsi.KMS-KEY
: jalur lengkap ke kunci enkripsi Cloud KMS, jika Anda menggunakan kunci enkripsi yang dikelola pelanggan untuk mengenkripsi konten repositori. Jalur dalam format:projects/KMS-PROJECT/locations/KMS-LOCATION/keyRings/KEY-RING/cryptoKeys/KEY
Ganti kode berikut:
KMS-PROJECT
: project tempat kunci Anda disimpan.KMS-LOCATION
: lokasi kunci.KEY-RING
: nama key ring.KEY
: nama kunci.
--async
: langsung ditampilkan, tanpa menunggu operasi yang sedang berlangsung selesai.
Pipeline KubeFlow
gcloud artifacts repositories create REPOSITORY \ --repository-format=kfp \ --location=LOCATION \ --description="DESCRIPTION" \ --kms-key=KMS-KEY \ --async
Ganti kode berikut:
REPOSITORY
: nama repositori. Untuk setiap lokasi repositori dalam project, nama repositori harus unik.LOCATION
: lokasi regional atau multi-regional untuk repositori. Anda dapat menghapus flag ini jika Anda menetapkan default. Untuk melihat daftar lokasi yang didukung, jalankan perintah:gcloud artifacts locations list
DESCRIPTION
: deskripsi repositori. Jangan sertakan data sensitif, karena deskripsi repositori tidak dienkripsi.KMS-KEY
: jalur lengkap ke kunci enkripsi Cloud KMS, jika Anda menggunakan kunci enkripsi yang dikelola pelanggan untuk mengenkripsi konten repositori. Jalur dalam format:projects/KMS-PROJECT/locations/KMS-LOCATION/keyRings/KEY-RING/cryptoKeys/KEY
Ganti kode berikut:
KMS-PROJECT
: project tempat kunci Anda disimpan.KMS-LOCATION
: lokasi kunci.KEY-RING
: nama key ring.KEY
: nama kunci.
--async
: segera ditampilkan, tanpa menunggu operasi yang sedang berlangsung selesai.
Maven
Secara default, repositori Maven menyimpan versi snapshot dan rilis paket. Anda dapat menentukan kebijakan versi untuk membuat snapshot atau merilis repositori.
Untuk membuat repositori yang menyimpan snapshot dan rilis, jalankan perintah:
gcloud artifacts repositories create REPOSITORY \ --repository-format=maven \ --location=LOCATION \ --description="DESCRIPTION" \ --kms-key=KMS-KEY \ --async
Ganti kode berikut:
REPOSITORY
: nama repositori. Untuk setiap lokasi repositori dalam project, nama repositori harus unik.LOCATION
: lokasi regional atau multi-regional untuk repositori. Anda dapat menghapus flag ini jika Anda menetapkan default. Untuk melihat daftar lokasi yang didukung, jalankan perintah:gcloud artifacts locations list
DESCRIPTION
: deskripsi repositori. Jangan sertakan data sensitif, karena deskripsi repositori tidak dienkripsi.KMS-KEY
: jalur lengkap ke kunci enkripsi Cloud KMS, jika Anda menggunakan kunci enkripsi yang dikelola pelanggan untuk mengenkripsi konten repositori. Jalur dalam format:projects/KMS-PROJECT/locations/KMS-LOCATION/keyRings/KEY-RING/cryptoKeys/KEY
Ganti kode berikut:
KMS-PROJECT
: project tempat kunci Anda disimpan.KMS-LOCATION
: lokasi kunci.KEY-RING
: nama key ring.KEY
: nama kunci.
--async
: segera ditampilkan, tanpa menunggu operasi yang sedang berlangsung selesai.
Untuk menyimpan snapshot dan merilis versi di repositori yang berbeda, tentukan kebijakan versi dalam perintah:
gcloud artifacts repositories create REPOSITORY \
--repository-format=maven \
[--location=LOCATION] \
[--description="DESCRIPTION"] \
[--kms-key=KMS-KEY] \
[--version-policy=VERSION-POLICY] \
[--allow-snapshot-overwrites] \
[--async] \
Flag berikut khusus untuk repositori Maven:
-
--version-policy=VERSION-POLICY
Menentukan jenis paket yang akan disimpan di repositori. Anda dapat menyetel VERSION-POLICY ke:
None
- Tidak ada kebijakan versi. Simpan paket rilis dan snapshot. Jika Anda tidak menyertakan flag--version-policy
dalam perintah, ini adalah setelan default.Release
- Hanya menyimpan paket rilis.Snapshot
- Menyimpan hanya paket snapshot.
--allow-snapshot-overwrites
Hanya untuk repositori snapshot. Jika menentukan tanda ini, Anda dapat memublikasikan snapshot tidak unik yang menimpa versi yang ada di repositori.
npm
gcloud artifacts repositories create REPOSITORY \ --repository-format=npm \ --location=LOCATION \ --description="DESCRIPTION" \ --kms-key=KMS-KEY \ --async
Ganti kode berikut:
REPOSITORY
: nama repositori. Untuk setiap lokasi repositori dalam project, nama repositori harus unik.LOCATION
: lokasi regional atau multi-regional untuk repositori. Anda dapat menghapus flag ini jika Anda menetapkan default. Untuk melihat daftar lokasi yang didukung, jalankan perintah:gcloud artifacts locations list
DESCRIPTION
: deskripsi repositori. Jangan sertakan data sensitif, karena deskripsi repositori tidak dienkripsi.KMS-KEY
: jalur lengkap ke kunci enkripsi Cloud KMS, jika Anda menggunakan kunci enkripsi yang dikelola pelanggan untuk mengenkripsi konten repositori. Jalur dalam format:projects/KMS-PROJECT/locations/KMS-LOCATION/keyRings/KEY-RING/cryptoKeys/KEY
Ganti kode berikut:
KMS-PROJECT
: project tempat kunci Anda disimpan.KMS-LOCATION
: lokasi kunci.KEY-RING
: nama key ring.KEY
: nama kunci.
--async
: langsung ditampilkan, tanpa menunggu operasi yang sedang berlangsung selesai.
Python
gcloud artifacts repositories create REPOSITORY \ --repository-format=python \ --location=LOCATION \ --description="DESCRIPTION" \ --kms-key=KMS-KEY \ --async
Ganti kode berikut:
REPOSITORY
: nama repositori. Untuk setiap lokasi repositori dalam project, nama repositori harus unik.LOCATION
: lokasi regional atau multi-regional untuk repositori. Anda dapat menghapus flag ini jika Anda menetapkan default. Untuk melihat daftar lokasi yang didukung, jalankan perintah:gcloud artifacts locations list
DESCRIPTION
: deskripsi repositori. Jangan sertakan data sensitif, karena deskripsi repositori tidak dienkripsi.KMS-KEY
: jalur lengkap ke kunci enkripsi Cloud KMS, jika Anda menggunakan kunci enkripsi yang dikelola pelanggan untuk mengenkripsi konten repositori. Jalur dalam format:projects/KMS-PROJECT/locations/KMS-LOCATION/keyRings/KEY-RING/cryptoKeys/KEY
Ganti kode berikut:
KMS-PROJECT
: project tempat kunci Anda disimpan.KMS-LOCATION
: lokasi kunci.KEY-RING
: nama key ring.KEY
: nama kunci.
--async
: segera ditampilkan, tanpa menunggu operasi yang sedang berlangsung selesai.
Enak
gcloud artifacts repositories create REPOSITORY \ --repository-format=yum \ --location=LOCATION \ --description="DESCRIPTION" \ --kms-key=KMS-KEY \ --async
Ganti kode berikut:
REPOSITORY
: nama repositori. Untuk setiap lokasi repositori dalam project, nama repositori harus unik.LOCATION
: lokasi regional atau multi-regional untuk repositori. Anda dapat menghapus flag ini jika Anda menetapkan default. Untuk melihat daftar lokasi yang didukung, jalankan perintah:gcloud artifacts locations list
DESCRIPTION
: deskripsi repositori. Jangan sertakan data sensitif, karena deskripsi repositori tidak dienkripsi.KMS-KEY
: jalur lengkap ke kunci enkripsi Cloud KMS, jika Anda menggunakan kunci enkripsi yang dikelola pelanggan untuk mengenkripsi konten repositori. Jalur dalam format:projects/KMS-PROJECT/locations/KMS-LOCATION/keyRings/KEY-RING/cryptoKeys/KEY
Ganti kode berikut:
KMS-PROJECT
: project tempat kunci Anda disimpan.KMS-LOCATION
: lokasi kunci.KEY-RING
: nama key ring.KEY
: nama kunci.
--async
: segera ditampilkan, tanpa menunggu operasi yang sedang berlangsung selesai.
Artifact Registry akan membuat repositori Anda. Jalankan perintah berikut untuk melihat deskripsi repositori:
gcloud artifacts repositories describe REPOSITORY \
--location=LOCATION
Setelah Anda membuat repositori:
- Memberikan akses ke repositori.
- Konfigurasi kebijakan pembersihan untuk menghapus artefak yang tidak digunakan.
Konfigurasi Docker, pengelola paket, dan klien pihak ketiga lainnya untuk mengautentikasi ke repositori.
Membuat repositori menggunakan Terraform
Gunakan resource google_artifact_registry_repository
untuk membuat repositori.
Diperlukan versi terraform-provider-google
5.0.0
atau yang lebih baru.
Jika Anda baru menggunakan Terraform untuk Google Cloud, lihat halaman Mulai - Google Cloud di situs HashiCorp.
Contoh berikut menentukan penyedia dan repositori dengan
nama resource Terraform my-repo
.
Apt
provider "google" { project = "PROJECT-ID" }
resource "google_artifact_registry_repository" "my-repo" { location = "LOCATION" repository_id = "REPOSITORY" description = "DESCRIPTION" format = "apt" kms_key_name = "KEY" cleanup_policy_dry_run = DRY_RUN_STATUS cleanup_policies { id = "POLICY_NAME" action = "DELETE" condition { tag_state = "TAG_STATE" tag_prefixes = ["TAG_PREFIX", "TAG_PREFIX_N"] older_than = "TIME_SINCE_UPLOAD" } } cleanup_policies { id = "POLICY_NAME" action = "KEEP" condition { tag_state = "TAG_STATE" tag_prefixes = ["TAG_PREFIX", "TAG_PREFIX_N"] package_name_prefixes = ["PKG_PREFIX", "PKG_PREFIX_N"] } } cleanup_policies { id = "POLICY_NAME" action = "KEEP" most_recent_versions { package_name_prefixes = ["PKG_PREFIX", "PKG_PREFIX_N"] keep_count = KEEP_COUNT } } }
Ganti kode berikut:
PROJECT-ID
adalah Google Cloud project ID.LOCATION
adalah lokasi repositori.REPOSITORY
adalah nama repositori.DESCRIPTION
adalah deskripsi opsional untuk repositori. Jangan sertakan data sensitif, karena deskripsi repositori tidak dienkripsi.KEY
adalah nama kunci Cloud Key Management Service, jika Anda menggunakan kunci enkripsi yang dikelola pelanggan (CMEK) untuk enkripsi. Hapus argumen ini untuk menggunakan setelan default, yaitu kunci enkripsi yang dikelola Google.DRY_RUN_STATUS
menentukan apakah kebijakan pembersihan menghapus artefak, atau hanya mencatat artefak mana yang akan dihapus jika kebijakan pembersihan ditetapkan di repositori. Hapus jika Anda tidak ingin menambahkan kebijakan pembersihan ke repositori.true
: menetapkan kebijakan yang akan dijalankan dalam mode uji coba. Tidak ada artefak yang dihapus dalam mode uji coba.false
: menerapkan kebijakan pembersihan. Artefak dihapus atau disimpan, bergantung pada kebijakannya.
Untuk mengetahui informasi selengkapnya tentang kebijakan pembersihan, lihat Mengonfigurasi kebijakan pembersihan.
POLICY_NAME
adalah nama kebijakan pembersihan.TAG_STATE
adalah status tag untuk menerapkan kebijakan. Nilainya adalahtagged
,untagged
, danany
.any
berlaku untuk artefak yang diberi tag dan tidak diberi tag. Jika repositori mengaktifkan tag yang tidak dapat diubah, artefak yang diberi tag tidak dapat dihapus.TAG_PREFIX
,TAG_PREFIX_N
adalah awalan tag untuk menerapkan kebijakan.PKG_PREFIX
,PKG_PREFIX_N
adalah awalan paket untuk menerapkan kebijakan.TIME_SINCE_UPLOAD
adalah waktu sejak versi artefak diupload ke repositori, yang ditentukan sebagai durasi. Anda dapat menentukan durasi detik, menit, jam, atau hari dengan menambahkans
,m
,h
, ataud
.KEEP_COUNT
adalah jumlah versi artefak yang akan disimpan di repositori Anda.
Docker
provider "google" { project = "PROJECT-ID" }
resource "google_artifact_registry_repository" "my-repo" { location = "LOCATION" repository_id = "REPOSITORY" description = "DESCRIPTION" format = "docker" kms_key_name = "KEY" cleanup_policy_dry_run = DRY_RUN_STATUS cleanup_policies { id = "POLICY_NAME" action = "DELETE" condition { tag_state = "TAG_STATE" tag_prefixes = ["TAG_PREFIX", "TAG_PREFIX_N"] older_than = "TIME_SINCE_UPLOAD" } } cleanup_policies { id = "POLICY_NAME" action = "KEEP" condition { tag_state = "TAG_STATE" tag_prefixes = ["TAG_PREFIX", "TAG_PREFIX_N"] package_name_prefixes = ["PKG_PREFIX", "PKG_PREFIX_N"] } } cleanup_policies { id = "POLICY_NAME" action = "KEEP" most_recent_versions { package_name_prefixes = ["PKG_PREFIX", "PKG_PREFIX_N"] keep_count = KEEP_COUNT } } }
Ganti kode berikut:
PROJECT-ID
adalah Google Cloud project ID.LOCATION
adalah lokasi repositori.REPOSITORY
adalah nama repositori.DESCRIPTION
adalah deskripsi opsional untuk repositori. Jangan sertakan data sensitif, karena deskripsi repositori tidak dienkripsi.KEY
adalah nama kunci Cloud Key Management Service, jika Anda menggunakan kunci enkripsi yang dikelola pelanggan (CMEK) untuk enkripsi. Hapus argumen ini untuk menggunakan setelan default, yaitu kunci enkripsi yang dikelola Google.DRY_RUN_STATUS
menentukan apakah kebijakan pembersihan menghapus artefak, atau hanya mencatat artefak mana yang akan dihapus jika kebijakan pembersihan ditetapkan di repositori. Hapus jika Anda tidak ingin menambahkan kebijakan pembersihan ke repositori.true
: menetapkan kebijakan yang akan dijalankan dalam mode uji coba. Tidak ada artefak yang dihapus dalam mode uji coba.false
: menerapkan kebijakan pembersihan. Artefak dihapus atau disimpan, bergantung pada kebijakannya.
Untuk mengetahui informasi selengkapnya tentang kebijakan pembersihan, lihat Mengonfigurasi kebijakan pembersihan.
POLICY_NAME
adalah nama kebijakan pembersihan.TAG_STATE
adalah status tag untuk menerapkan kebijakan. Nilainya adalahtagged
,untagged
, danany
.any
berlaku untuk artefak yang diberi tag dan tidak diberi tag. Jika repositori mengaktifkan tag yang tidak dapat diubah, artefak yang diberi tag tidak dapat dihapus.TAG_PREFIX
,TAG_PREFIX_N
adalah awalan tag untuk menerapkan kebijakan.PKG_PREFIX
,PKG_PREFIX_N
adalah awalan paket untuk menerapkan kebijakan.TIME_SINCE_UPLOAD
adalah waktu sejak versi artefak diupload ke repositori, yang ditentukan sebagai durasi. Anda dapat menentukan durasi detik, menit, jam, atau hari dengan menambahkans
,m
,h
, ataud
.KEEP_COUNT
adalah jumlah versi artefak yang akan disimpan di repositori Anda.
Generik
provider "google" { project = "PROJECT-ID" }
resource "google_artifact_registry_repository" "my-repo" { location = "LOCATION" repository_id = "REPOSITORY" description = "DESCRIPTION" format = "generic" kms_key_name = "KEY" cleanup_policy_dry_run = DRY_RUN_STATUS cleanup_policies { id = "POLICY_NAME" action = "DELETE" condition { tag_state = "TAG_STATE" tag_prefixes = ["TAG_PREFIX", "TAG_PREFIX_N"] older_than = "TIME_SINCE_UPLOAD" } } cleanup_policies { id = "POLICY_NAME" action = "KEEP" condition { tag_state = "TAG_STATE" tag_prefixes = ["TAG_PREFIX", "TAG_PREFIX_N"] package_name_prefixes = ["PKG_PREFIX", "PKG_PREFIX_N"] } } cleanup_policies { id = "POLICY_NAME" action = "KEEP" most_recent_versions { package_name_prefixes = ["PKG_PREFIX", "PKG_PREFIX_N"] keep_count = KEEP_COUNT } } }
Ganti kode berikut:
PROJECT-ID
adalah Google Cloud project ID.LOCATION
adalah lokasi repositori.REPOSITORY
adalah nama repositori.DESCRIPTION
adalah deskripsi opsional untuk repositori. Jangan sertakan data sensitif, karena deskripsi repositori tidak dienkripsi.KEY
adalah nama kunci Cloud Key Management Service, jika Anda menggunakan kunci enkripsi yang dikelola pelanggan (CMEK) untuk enkripsi. Hapus argumen ini untuk menggunakan setelan default, yaitu kunci enkripsi yang dikelola Google.DRY_RUN_STATUS
menentukan apakah kebijakan pembersihan menghapus artefak, atau hanya mencatat artefak mana yang akan dihapus jika kebijakan pembersihan ditetapkan di repositori. Hapus jika Anda tidak ingin menambahkan kebijakan pembersihan ke repositori.true
: menetapkan kebijakan yang akan dijalankan dalam mode uji coba. Tidak ada artefak yang dihapus dalam mode uji coba.false
: menerapkan kebijakan pembersihan. Artefak dihapus atau disimpan, bergantung pada kebijakannya.
Untuk mengetahui informasi selengkapnya tentang kebijakan pembersihan, lihat Mengonfigurasi kebijakan pembersihan.
POLICY_NAME
adalah nama kebijakan pembersihan.TAG_STATE
adalah status tag untuk menerapkan kebijakan. Nilainya adalahtagged
,untagged
, danany
.any
berlaku untuk artefak yang diberi tag dan tidak diberi tag. Jika repositori mengaktifkan tag yang tidak dapat diubah, artefak yang diberi tag tidak dapat dihapus.TAG_PREFIX
,TAG_PREFIX_N
adalah awalan tag untuk menerapkan kebijakan.PKG_PREFIX
,PKG_PREFIX_N
adalah awalan paket untuk menerapkan kebijakan.TIME_SINCE_UPLOAD
adalah waktu sejak versi artefak diupload ke repositori, yang ditentukan sebagai durasi. Anda dapat menentukan durasi detik, menit, jam, atau hari dengan menambahkans
,m
,h
, ataud
.KEEP_COUNT
adalah jumlah versi artefak yang akan disimpan di repositori Anda.
Go
provider "google" { project = "PROJECT-ID" }
resource "google_artifact_registry_repository" "my-repo" { location = "LOCATION" repository_id = "REPOSITORY" description = "DESCRIPTION" format = "go" kms_key_name = "KEY" cleanup_policy_dry_run = DRY_RUN_STATUS cleanup_policies { id = "POLICY_NAME" action = "DELETE" condition { tag_state = "TAG_STATE" tag_prefixes = ["TAG_PREFIX", "TAG_PREFIX_N"] older_than = "TIME_SINCE_UPLOAD" } } cleanup_policies { id = "POLICY_NAME" action = "KEEP" condition { tag_state = "TAG_STATE" tag_prefixes = ["TAG_PREFIX", "TAG_PREFIX_N"] package_name_prefixes = ["PKG_PREFIX", "PKG_PREFIX_N"] } } cleanup_policies { id = "POLICY_NAME" action = "KEEP" most_recent_versions { package_name_prefixes = ["PKG_PREFIX", "PKG_PREFIX_N"] keep_count = KEEP_COUNT } } }
Ganti kode berikut:
PROJECT-ID
adalah Google Cloud project ID.LOCATION
adalah lokasi repositori.REPOSITORY
adalah nama repositori.DESCRIPTION
adalah deskripsi opsional untuk repositori. Jangan sertakan data sensitif, karena deskripsi repositori tidak dienkripsi.KEY
adalah nama kunci Cloud Key Management Service, jika Anda menggunakan kunci enkripsi yang dikelola pelanggan (CMEK) untuk enkripsi. Hapus argumen ini untuk menggunakan setelan default, yaitu kunci enkripsi yang dikelola Google.DRY_RUN_STATUS
menentukan apakah kebijakan pembersihan menghapus artefak, atau hanya mencatat artefak mana yang akan dihapus jika kebijakan pembersihan ditetapkan di repositori. Hapus jika Anda tidak ingin menambahkan kebijakan pembersihan ke repositori.true
: menetapkan kebijakan yang akan dijalankan dalam mode uji coba. Tidak ada artefak yang dihapus dalam mode uji coba.false
: menerapkan kebijakan pembersihan. Artefak dihapus atau disimpan, bergantung pada kebijakannya.
Untuk mengetahui informasi selengkapnya tentang kebijakan pembersihan, lihat Mengonfigurasi kebijakan pembersihan.
POLICY_NAME
adalah nama kebijakan pembersihan.TAG_STATE
adalah status tag untuk menerapkan kebijakan. Nilainya adalahtagged
,untagged
, danany
.any
berlaku untuk artefak yang diberi tag dan tidak diberi tag. Jika repositori mengaktifkan tag yang tidak dapat diubah, artefak yang diberi tag tidak dapat dihapus.TAG_PREFIX
,TAG_PREFIX_N
adalah awalan tag untuk menerapkan kebijakan.PKG_PREFIX
,PKG_PREFIX_N
adalah awalan paket untuk menerapkan kebijakan.TIME_SINCE_UPLOAD
adalah waktu sejak versi artefak diupload ke repositori, yang ditentukan sebagai durasi. Anda dapat menentukan durasi detik, menit, jam, atau hari dengan menambahkans
,m
,h
, ataud
.KEEP_COUNT
adalah jumlah versi artefak yang akan disimpan di repositori Anda.
Pipeline KubeFlow
provider "google" { project = "PROJECT-ID" }
resource "google_artifact_registry_repository" "my-repo" { location = "LOCATION" repository_id = "REPOSITORY" description = "DESCRIPTION" format = "kfp" kms_key_name = "KEY" cleanup_policy_dry_run = DRY_RUN_STATUS cleanup_policies { id = "POLICY_NAME" action = "DELETE" condition { tag_state = "TAG_STATE" tag_prefixes = ["TAG_PREFIX", "TAG_PREFIX_N"] older_than = "TIME_SINCE_UPLOAD" } } cleanup_policies { id = "POLICY_NAME" action = "KEEP" condition { tag_state = "TAG_STATE" tag_prefixes = ["TAG_PREFIX", "TAG_PREFIX_N"] package_name_prefixes = ["PKG_PREFIX", "PKG_PREFIX_N"] } } cleanup_policies { id = "POLICY_NAME" action = "KEEP" most_recent_versions { package_name_prefixes = ["PKG_PREFIX", "PKG_PREFIX_N"] keep_count = KEEP_COUNT } } }
Ganti kode berikut:
PROJECT-ID
adalah Google Cloud project ID.LOCATION
adalah lokasi repositori.REPOSITORY
adalah nama repositori.DESCRIPTION
adalah deskripsi opsional untuk repositori. Jangan sertakan data sensitif, karena deskripsi repositori tidak dienkripsi.KEY
adalah nama kunci Cloud Key Management Service, jika Anda menggunakan kunci enkripsi yang dikelola pelanggan (CMEK) untuk enkripsi. Hapus argumen ini untuk menggunakan setelan default, yaitu kunci enkripsi yang dikelola Google.DRY_RUN_STATUS
menentukan apakah kebijakan pembersihan menghapus artefak, atau hanya mencatat artefak mana yang akan dihapus jika kebijakan pembersihan ditetapkan di repositori. Hapus jika Anda tidak ingin menambahkan kebijakan pembersihan ke repositori.true
: menetapkan kebijakan yang akan dijalankan dalam mode uji coba. Tidak ada artefak yang dihapus dalam mode uji coba.false
: menerapkan kebijakan pembersihan. Artefak dihapus atau disimpan, bergantung pada kebijakannya.
Untuk mengetahui informasi selengkapnya tentang kebijakan pembersihan, lihat Mengonfigurasi kebijakan pembersihan.
POLICY_NAME
adalah nama kebijakan pembersihan.TAG_STATE
adalah status tag untuk menerapkan kebijakan. Nilainya adalahtagged
,untagged
, danany
.any
berlaku untuk artefak yang diberi tag dan tidak diberi tag. Jika repositori mengaktifkan tag yang tidak dapat diubah, artefak yang diberi tag tidak dapat dihapus.TAG_PREFIX
,TAG_PREFIX_N
adalah awalan tag untuk menerapkan kebijakan.PKG_PREFIX
,PKG_PREFIX_N
adalah awalan paket untuk menerapkan kebijakan.TIME_SINCE_UPLOAD
adalah waktu sejak versi artefak diupload ke repositori, yang ditentukan sebagai durasi. Anda dapat menentukan durasi detik, menit, jam, atau hari dengan menambahkans
,m
,h
, ataud
.KEEP_COUNT
adalah jumlah versi artefak yang akan disimpan di repositori Anda.
Maven
Jika Anda tidak menentukan kebijakan versi, Artifact Registry akan membuat repositori Maven yang menyimpan versi snapshot dan rilis paket secara default.
provider "google" { project = "PROJECT-ID" }
resource "google_artifact_registry_repository" "my-repo" { location = "LOCATION" repository_id = "REPOSITORY" description = "DESCRIPTION" format = "maven" kms_key_name = "KEY" cleanup_policy_dry_run = DRY_RUN_STATUS cleanup_policies { id = "POLICY_NAME" action = "DELETE" condition { tag_state = "TAG_STATE" tag_prefixes = ["TAG_PREFIX", "TAG_PREFIX_N"] older_than = "TIME_SINCE_UPLOAD" } } cleanup_policies { id = "POLICY_NAME" action = "KEEP" condition { tag_state = "TAG_STATE" tag_prefixes = ["TAG_PREFIX", "TAG_PREFIX_N"] package_name_prefixes = ["PKG_PREFIX", "PKG_PREFIX_N"] } } cleanup_policies { id = "POLICY_NAME" action = "KEEP" most_recent_versions { package_name_prefixes = ["PKG_PREFIX", "PKG_PREFIX_N"] keep_count = KEEP_COUNT } } }
Ganti kode berikut:
PROJECT-ID
adalah Google Cloud project ID.LOCATION
adalah lokasi repositori.REPOSITORY
adalah nama repositori.DESCRIPTION
adalah deskripsi opsional untuk repositori. Jangan sertakan data sensitif, karena deskripsi repositori tidak dienkripsi.KEY
adalah nama kunci Cloud Key Management Service, jika Anda menggunakan kunci enkripsi yang dikelola pelanggan (CMEK) untuk enkripsi. Hapus argumen ini untuk menggunakan setelan default, yaitu kunci enkripsi yang dikelola Google.DRY_RUN_STATUS
menentukan apakah kebijakan pembersihan menghapus artefak, atau hanya mencatat artefak mana yang akan dihapus jika kebijakan pembersihan ditetapkan di repositori. Hapus jika Anda tidak ingin menambahkan kebijakan pembersihan ke repositori.true
: menetapkan kebijakan yang akan dijalankan dalam mode uji coba. Tidak ada artefak yang dihapus dalam mode uji coba.false
: menerapkan kebijakan pembersihan. Artefak dihapus atau disimpan, bergantung pada kebijakannya.
Untuk mengetahui informasi selengkapnya tentang kebijakan pembersihan, lihat Mengonfigurasi kebijakan pembersihan.
POLICY_NAME
adalah nama kebijakan pembersihan.TAG_STATE
adalah status tag untuk menerapkan kebijakan. Nilainya adalahtagged
,untagged
, danany
.any
berlaku untuk artefak yang diberi tag dan tidak diberi tag. Jika repositori mengaktifkan tag yang tidak dapat diubah, artefak yang diberi tag tidak dapat dihapus.TAG_PREFIX
,TAG_PREFIX_N
adalah awalan tag untuk menerapkan kebijakan.PKG_PREFIX
,PKG_PREFIX_N
adalah awalan paket untuk menerapkan kebijakan.TIME_SINCE_UPLOAD
adalah waktu sejak versi artefak diupload ke repositori, yang ditentukan sebagai durasi. Anda dapat menentukan durasi detik, menit, jam, atau hari dengan menambahkans
,m
,h
, ataud
.KEEP_COUNT
adalah jumlah versi artefak yang akan disimpan di repositori Anda.Untuk menyimpan versi snapshot dan rilis di repositori yang berbeda, tentukan kebijakan versi untuk repositori menggunakan blok
maven_config
. Blok ini mendukung setelan berikut:version_policy
menetapkan kebijakan versi dengan salah satu nilai berikut:VERSION_POLICY_UNSPECIFIED
: Menyimpan snapshot dan merilis paket. Ini adalah setelan default.- RILIS: Hanya menyimpan paket rilis.
- SNAPSHOT: Hanya menyimpan paket snapshot.
allow_snapshot_overwrites
mengonfigurasi repositori dengan kebijakan versiSNAPSHOT
untuk menerima snapshot non-unik yang menggantikan versi yang ada di repositori.Contoh berikut menentukan repositori Maven dengan kebijakan versi rilis.
provider "google" { project = "my-project" } resource "google_artifact_registry_repository" "my-repo" { provider = google-beta location = "us-central1" repository_id = "my-repo" description = "Maven repository" format = "MAVEN" maven_config { version_policy = "RELEASE" } }
npm
provider "google" { project = "PROJECT-ID" }
resource "google_artifact_registry_repository" "my-repo" { location = "LOCATION" repository_id = "REPOSITORY" description = "DESCRIPTION" format = "npm" kms_key_name = "KEY" cleanup_policy_dry_run = DRY_RUN_STATUS cleanup_policies { id = "POLICY_NAME" action = "DELETE" condition { tag_state = "TAG_STATE" tag_prefixes = ["TAG_PREFIX", "TAG_PREFIX_N"] older_than = "TIME_SINCE_UPLOAD" } } cleanup_policies { id = "POLICY_NAME" action = "KEEP" condition { tag_state = "TAG_STATE" tag_prefixes = ["TAG_PREFIX", "TAG_PREFIX_N"] package_name_prefixes = ["PKG_PREFIX", "PKG_PREFIX_N"] } } cleanup_policies { id = "POLICY_NAME" action = "KEEP" most_recent_versions { package_name_prefixes = ["PKG_PREFIX", "PKG_PREFIX_N"] keep_count = KEEP_COUNT } } }
Ganti kode berikut:
PROJECT-ID
adalah Google Cloud project ID.LOCATION
adalah lokasi repositori.REPOSITORY
adalah nama repositori.DESCRIPTION
adalah deskripsi opsional untuk repositori. Jangan sertakan data sensitif, karena deskripsi repositori tidak dienkripsi.KEY
adalah nama kunci Cloud Key Management Service, jika Anda menggunakan kunci enkripsi yang dikelola pelanggan (CMEK) untuk enkripsi. Hapus argumen ini untuk menggunakan setelan default, yaitu kunci enkripsi yang dikelola Google.DRY_RUN_STATUS
menentukan apakah kebijakan pembersihan menghapus artefak, atau hanya mencatat artefak mana yang akan dihapus jika kebijakan pembersihan ditetapkan di repositori. Hapus jika Anda tidak ingin menambahkan kebijakan pembersihan ke repositori.true
: menetapkan kebijakan yang akan dijalankan dalam mode uji coba. Tidak ada artefak yang dihapus dalam mode uji coba.false
: menerapkan kebijakan pembersihan. Artefak dihapus atau disimpan, bergantung pada kebijakannya.
Untuk mengetahui informasi selengkapnya tentang kebijakan pembersihan, lihat Mengonfigurasi kebijakan pembersihan.
POLICY_NAME
adalah nama kebijakan pembersihan.TAG_STATE
adalah status tag untuk menerapkan kebijakan. Nilainya adalahtagged
,untagged
, danany
.any
berlaku untuk artefak yang diberi tag dan tidak diberi tag. Jika repositori mengaktifkan tag yang tidak dapat diubah, artefak yang diberi tag tidak dapat dihapus.TAG_PREFIX
,TAG_PREFIX_N
adalah awalan tag untuk menerapkan kebijakan.PKG_PREFIX
,PKG_PREFIX_N
adalah awalan paket untuk menerapkan kebijakan.TIME_SINCE_UPLOAD
adalah waktu sejak versi artefak diupload ke repositori, yang ditentukan sebagai durasi. Anda dapat menentukan durasi detik, menit, jam, atau hari dengan menambahkans
,m
,h
, ataud
.KEEP_COUNT
adalah jumlah versi artefak yang akan disimpan di repositori Anda.
Python
provider "google" { project = "PROJECT-ID" }
resource "google_artifact_registry_repository" "my-repo" { location = "LOCATION" repository_id = "REPOSITORY" description = "DESCRIPTION" format = "python" kms_key_name = "KEY" cleanup_policy_dry_run = DRY_RUN_STATUS cleanup_policies { id = "POLICY_NAME" action = "DELETE" condition { tag_state = "TAG_STATE" tag_prefixes = ["TAG_PREFIX", "TAG_PREFIX_N"] older_than = "TIME_SINCE_UPLOAD" } } cleanup_policies { id = "POLICY_NAME" action = "KEEP" condition { tag_state = "TAG_STATE" tag_prefixes = ["TAG_PREFIX", "TAG_PREFIX_N"] package_name_prefixes = ["PKG_PREFIX", "PKG_PREFIX_N"] } } cleanup_policies { id = "POLICY_NAME" action = "KEEP" most_recent_versions { package_name_prefixes = ["PKG_PREFIX", "PKG_PREFIX_N"] keep_count = KEEP_COUNT } } }
Ganti kode berikut:
PROJECT-ID
adalah Google Cloud project ID.LOCATION
adalah lokasi repositori.REPOSITORY
adalah nama repositori.DESCRIPTION
adalah deskripsi opsional untuk repositori. Jangan sertakan data sensitif, karena deskripsi repositori tidak dienkripsi.KEY
adalah nama kunci Cloud Key Management Service, jika Anda menggunakan kunci enkripsi yang dikelola pelanggan (CMEK) untuk enkripsi. Hapus argumen ini untuk menggunakan setelan default, yaitu kunci enkripsi yang dikelola Google.DRY_RUN_STATUS
menentukan apakah kebijakan pembersihan menghapus artefak, atau hanya mencatat artefak mana yang akan dihapus jika kebijakan pembersihan ditetapkan di repositori. Hapus jika Anda tidak ingin menambahkan kebijakan pembersihan ke repositori.true
: menetapkan kebijakan yang akan dijalankan dalam mode uji coba. Tidak ada artefak yang dihapus dalam mode uji coba.false
: menerapkan kebijakan pembersihan. Artefak dihapus atau disimpan, bergantung pada kebijakannya.
Untuk mengetahui informasi selengkapnya tentang kebijakan pembersihan, lihat Mengonfigurasi kebijakan pembersihan.
POLICY_NAME
adalah nama kebijakan pembersihan.TAG_STATE
adalah status tag untuk menerapkan kebijakan. Nilainya adalahtagged
,untagged
, danany
.any
berlaku untuk artefak yang diberi tag dan tidak diberi tag. Jika repositori mengaktifkan tag yang tidak dapat diubah, artefak yang diberi tag tidak dapat dihapus.TAG_PREFIX
,TAG_PREFIX_N
adalah awalan tag untuk menerapkan kebijakan.PKG_PREFIX
,PKG_PREFIX_N
adalah awalan paket untuk menerapkan kebijakan.TIME_SINCE_UPLOAD
adalah waktu sejak versi artefak diupload ke repositori, yang ditentukan sebagai durasi. Anda dapat menentukan durasi detik, menit, jam, atau hari dengan menambahkans
,m
,h
, ataud
.KEEP_COUNT
adalah jumlah versi artefak yang akan disimpan di repositori Anda.
Enak
provider "google" { project = "PROJECT-ID" }
resource "google_artifact_registry_repository" "my-repo" { location = "LOCATION" repository_id = "REPOSITORY" description = "DESCRIPTION" format = "yum" kms_key_name = "KEY" cleanup_policy_dry_run = DRY_RUN_STATUS cleanup_policies { id = "POLICY_NAME" action = "DELETE" condition { tag_state = "TAG_STATE" tag_prefixes = ["TAG_PREFIX", "TAG_PREFIX_N"] older_than = "TIME_SINCE_UPLOAD" } } cleanup_policies { id = "POLICY_NAME" action = "KEEP" condition { tag_state = "TAG_STATE" tag_prefixes = ["TAG_PREFIX", "TAG_PREFIX_N"] package_name_prefixes = ["PKG_PREFIX", "PKG_PREFIX_N"] } } cleanup_policies { id = "POLICY_NAME" action = "KEEP" most_recent_versions { package_name_prefixes = ["PKG_PREFIX", "PKG_PREFIX_N"] keep_count = KEEP_COUNT } } }
Ganti kode berikut:
PROJECT-ID
adalah Google Cloud project ID.LOCATION
adalah lokasi repositori.REPOSITORY
adalah nama repositori.DESCRIPTION
adalah deskripsi opsional untuk repositori. Jangan sertakan data sensitif, karena deskripsi repositori tidak dienkripsi.KEY
adalah nama kunci Cloud Key Management Service, jika Anda menggunakan kunci enkripsi yang dikelola pelanggan (CMEK) untuk enkripsi. Hapus argumen ini untuk menggunakan setelan default, yaitu kunci enkripsi yang dikelola Google.DRY_RUN_STATUS
menentukan apakah kebijakan pembersihan menghapus artefak, atau hanya mencatat artefak mana yang akan dihapus jika kebijakan pembersihan ditetapkan di repositori. Hapus jika Anda tidak ingin menambahkan kebijakan pembersihan ke repositori.true
: menetapkan kebijakan yang akan dijalankan dalam mode uji coba. Tidak ada artefak yang dihapus dalam mode uji coba.false
: menerapkan kebijakan pembersihan. Artefak dihapus atau disimpan, bergantung pada kebijakannya.
Untuk mengetahui informasi selengkapnya tentang kebijakan pembersihan, lihat Mengonfigurasi kebijakan pembersihan.
POLICY_NAME
adalah nama kebijakan pembersihan.TAG_STATE
adalah status tag untuk menerapkan kebijakan. Nilainya adalahtagged
,untagged
, danany
.any
berlaku untuk artefak yang diberi tag dan tidak diberi tag. Jika repositori mengaktifkan tag yang tidak dapat diubah, artefak yang diberi tag tidak dapat dihapus.TAG_PREFIX
,TAG_PREFIX_N
adalah awalan tag untuk menerapkan kebijakan.PKG_PREFIX
,PKG_PREFIX_N
adalah awalan paket untuk menerapkan kebijakan.TIME_SINCE_UPLOAD
adalah waktu sejak versi artefak diupload ke repositori, yang ditentukan sebagai durasi. Anda dapat menentukan durasi detik, menit, jam, atau hari dengan menambahkans
,m
,h
, ataud
.KEEP_COUNT
adalah jumlah versi artefak yang akan disimpan di repositori Anda.
Artifact Registry akan membuat repositori Anda. Jalankan perintah berikut untuk melihat deskripsi repositori:
gcloud artifacts repositories describe REPOSITORY \
--location=LOCATION
Setelah Anda membuat repositori:
- Memberikan akses ke repositori.
Konfigurasi Docker, pengelola paket, dan klien pihak ketiga lainnya untuk mengautentikasi ke repositori.
Mengedit deskripsi repositori
Anda dapat mengubah deskripsi repositori dari Google Cloud konsol atau gcloud CLI.
Konsol
Buka halaman Repositories di konsol Google Cloud .
Di daftar repositori, pilih repositori, lalu klik Edit Repository.
Edit deskripsi repositori, lalu klik Simpan.
gcloud
Untuk memperbarui deskripsi repositori, jalankan perintah:
gcloud artifacts repositories update REPOSITORY \
--project=PROJECT \
--location=LOCATION \
--description="DESCRIPTION"
Ganti kode berikut:
REPOSITORY
: nama repositori. Jika Anda mengonfigurasi repositori default, Anda dapat menghapus tanda ini untuk menggunakan default.PROJECT
: ID project. Google CloudJika flag ini dihilangkan, project saat ini atau default akan digunakan.-
LOCATION
adalah lokasi repositori regional atau multi-regional. Gunakan tanda ini untuk melihat repositori di lokasi tertentu. Jika Anda mengonfigurasi lokasi default, Anda dapat menghilangkan tanda ini untuk menggunakan default. DESCRIPTION
: deskripsi untuk repositori.