Halaman ini memberikan petunjuk tentang cara membuat dan mengelola aturan retensi tag untuk administrator atau developer yang mengelola dan memelihara repositori Harbor. Aturan retensi tag Harbor adalah serangkaian kebijakan yang secara otomatis mengelola dan mengoptimalkan tag image dalam repositori Harbor.
Gunakan aturan retensi tag untuk melakukan tindakan berikut:
- Mengosongkan ruang penyimpanan: Untuk menghindari penumpukan data yang tidak perlu, tentukan aturan untuk menyimpan artefak selama jangka waktu tertentu atau hapus tag gambar yang tidak digunakan secara manual.
- Menjaga repositori tetap bersih: Simpan hanya tag terbaru atau relevan untuk meningkatkan organisasi dan penemuan.
- Mengotomatiskan pengelolaan tag: Hindari penghapusan manual dan sederhanakan pemeliharaan repositori gambar Anda.
Aturan retensi tag memungkinkan Anda mengelola image dalam repositori dengan menghapus tag image yang tidak lagi diperlukan secara otomatis. Filter aturan retensi melalui tag Anda dalam tiga langkah berurutan untuk menentukan gambar mana yang ingin Anda simpan dan mana yang ingin dihapus:
- Repositori: Masukkan nama repositori. Harbor menerapkan
filter repositori terlebih dahulu, lalu menerapkan aturan retensi ke repositori yang cocok dengan nama repositori. Karakter pengganti seperti
*repo,repo*, dan**diizinkan. Untuk mengetahui informasi selengkapnya, lihat Menerapkan filter dengan pola karakter pengganti. Misalnya, Anda dapat menyetel filter repositori ke**, yang berarti semua repositori dalam project disertakan. - Jumlah yang akan dipertahankan: Masukkan jumlah maksimum tag atau tentukan periode maksimum untuk mempertahankan tag. Misalnya, Anda dapat menetapkan kebijakan retensi untuk mempertahankan 10 artefak yang baru-baru ini ditarik di setiap repositori.
- Tag yang akan dipertahankan: Masukkan nama tag gambar yang ingin Anda pertahankan. Harbor menerapkan aturan retensi ke tag image yang cocok dengan
teks input. Gunakan kotak centang untuk memilih apakah Anda ingin merekam artefak yang tidak diberi tag sebagai bagian dari kumpulan artefak yang memenuhi syarat untuk retensi tag atau tag yang tidak memiliki nama tersebut. Karakter pengganti seperti
*tag,tag*, dan**diizinkan. Untuk mengetahui informasi selengkapnya, lihat Menerapkan filter dengan pola karakter pengganti.
Sebelum memulai
Sebelum membuat aturan retensi tag, Anda harus memiliki hal berikut:
- Akun dengan peran
ProjectAdmindari kontrol akses berbasis peran Harbor. Untuk mengetahui informasi selengkapnya, lihat Mengonfigurasi akses untuk API dan dalam instance Harbor. - Repositori Harbor yang ada.
Membuat aturan retensi tag
Aturan tag retensi Harbor mengikuti urutan dan logika tertentu. Ikuti prinsip berikut saat membuat aturan retensi tag Harbor:
- Tentukan aturan retensi tag untuk repositori, bukan project. Saat Anda menentukan aturan retensi untuk repositori, Anda mengidentifikasi tag yang akan dipertahankan.
- Jangan tentukan aturan untuk menghapus tag secara eksplisit. Saat Anda menetapkan aturan, sistem akan menghapus tag apa pun di repositori yang tidak Anda identifikasi sebagai memenuhi syarat untuk retensi.
- Algoritma
ORdigunakan di antara aturan.
Buat aturan retensi tag menggunakan konsol Harbor:
- Login ke konsol Harbor dengan akun yang memiliki hak istimewa administrator project.
- Buka Projects, lalu pilih project.
- Di jendela project, klik tab Kebijakan, lalu klik Retensi Tag.
- Klik Add Rule.
Di menu Repositori, pilih mencocokkan atau mengecualikan.
Jika Anda memilih pencocokan, Harbor akan menerapkan aturan ke repositori yang Anda tentukan. Jika Anda memilih mengecualikan, Harbor akan menerapkan aturan ke semua repositori dalam project, kecuali repositori yang Anda identifikasi.
Di kotak Repositories, masukkan nama repositori tempat aturan akan diterapkan. Berikut adalah contoh input teks:
- Nama repositori seperti
example_repo_1. - Daftar nama repositori yang dipisahkan koma seperti
example_repo_1,example_repo_2,example_repo_3. - Nama repositori parsial dengan karakter pengganti seperti
example_*,*_3, atau*_repo_*. - Untuk menerapkan aturan ke semua repositori dalam project, gunakan karakter pengganti
**. - Untuk mengetahui informasi selengkapnya, lihat Menerapkan filter dengan pola karakter pengganti.
- Nama repositori seperti
Di menu Menurut jumlah artefak atau jumlah hari, pilih jumlah tag yang akan dipertahankan atau periode untuk mempertahankan tag. Pilih dari opsi berikut:
- Mempertahankan # artefak yang baru saja di-push: Pertahankan sejumlah artefak tertentu, dengan memprioritaskan artefak yang baru saja di-push. Tidak ada batasan usia yang berlaku untuk artefak.
- Mempertahankan # artefak yang ditarik baru-baru ini: Mempertahankan sejumlah artefak tertentu, dengan memprioritaskan artefak yang ditarik baru-baru ini. Tidak ada batas usia yang berlaku untuk artefak.
- Pertahankan artefak yang di-push dalam # hari terakhir: Pertahankan artefak yang di-push dalam jangka waktu tertentu. Tidak ada batasan jumlah artefak.
- Pertahankan artefak yang ditarik dalam # hari terakhir: Simpan artefak yang ditarik dalam jangka waktu tertentu. Tidak ada batasan jumlah artefak.
- Selalu pertahankan: Selalu menyimpan artefak yang cocok dengan aturan ini.
Di menu Tag, pilih mencocokkan atau mengecualikan.
Jika Anda memilih pencocokan, Harbor akan menerapkan aturan ke tag yang Anda identifikasi. Jika Anda memilih mengecualikan, Harbor akan menerapkan aturan ke semua tag di repositori, kecuali tag yang Anda identifikasi.
Di kotak Tag, masukkan nama tag yang akan diterapkan aturan.
Berikut adalah contoh input teks:
- Nama tag seperti
example_tag_1. - Daftar nama tag yang dipisahkan koma seperti
example_tag_1,example_tag_2,example_tag_3. - Nama tag parsial dengan karakter pengganti seperti
example_*,*_3, atau*_tag_*. - Untuk menerapkan aturan ke semua tag dalam project, gunakan karakter pengganti
**. - Untuk mengetahui informasi selengkapnya, lihat Menerapkan filter dengan pola karakter pengganti.
- Nama tag seperti
Untuk menyimpan aturan, klik Tambahkan.
Opsional: Untuk menambahkan aturan lainnya, klik Tambahkan Aturan. Anda dapat menambahkan maksimal 15 aturan per project.
Opsional: Di menu Jadwal, klik Edit, lalu pilih seberapa sering aturan akan dijalankan. Jika Anda memilih Kustom, masukkan perintah tugas cron untuk menjadwalkan aturan. Jika Anda menentukan beberapa aturan, Harbor akan menerapkan jadwal ke semua aturan. Anda tidak dapat menjadwalkan aturan yang berbeda untuk dijalankan pada waktu yang berbeda.
Untuk menguji aturan yang telah Anda tetapkan, klik Dry Run.
Untuk menjalankan aturan secara langsung, klik Jalankan Sekarang.
Menerapkan filter dengan pola karakter pengganti
Harbor menggunakan pencocokan pola bintang ganda. Pola karakter pengganti adalah karakter atau urutan khusus yang digunakan untuk mencocokkan atau merepresentasikan satu atau beberapa karakter dalam string. Gunakan pola karakter pengganti saat Anda menerapkan filter ke nama tag atau repositori dalam pembuatan aturan retensi tag. Karakter pengganti menawarkan kemampuan berikut:
- Mewakili satu atau beberapa karakter tanpa menentukannya secara eksplisit.
Gunakan karakter pengganti umum seperti berikut:
*: cocok dengan nol atau beberapa karakter.?: cocok dengan satu karakter apa pun.
Misalnya,
file*cocok dengan nama file apa pun yang diawali denganfile.Memungkinkan pencocokan yang fleksibel, yang berguna saat Anda tidak mengetahui karakter persisnya.
Gunakan pola karakter pengganti yang didukung berikut saat menentukan aturan retensi tag:
| Pola | Deskripsi |
|---|---|
* |
Mencocokkan urutan pemisah non-jalur apa pun. |
** |
Mencocokkan nol direktori atau lebih. |
? |
Mencocokkan satu karakter non-pemisah jalur. |
[class] |
Mencocokkan satu karakter non-pemisah jalur dengan class karakter. Untuk mengetahui informasi selengkapnya, lihat Menerapkan filter dengan class karakter. |
{alt1,...} |
Mencocokkan urutan karakter jika salah satu alternatif yang dipisahkan koma cocok. |
Untuk mengetahui informasi selengkapnya tentang pencocokan pola bintang ganda, lihat https://github.com/bmatcuk/doublestar.
Menerapkan filter dengan class karakter
Class karakter dan karakter pengganti digunakan untuk pencocokan pola. Gunakan class karakter saat Anda menerapkan filter ke nama tag atau repositori dalam pembuatan aturan retensi tag. Class karakter menawarkan kemampuan berikut dibandingkan dengan pola karakter pengganti:
- Tentukan sekumpulan karakter tertentu yang dapat cocok pada posisi tertentu.
- Gunakan tanda kurung siku (
[]) untuk menyertakan set. Misalnya,[aeiou]cocok dengan satu vokal apa pun. - Memungkinkan pencocokan yang lebih tepat, karena Anda mencantumkan karakter yang diizinkan secara eksplisit.
Gunakan class karakter berikut untuk memfilter repositori dan mengonfigurasi aturan retensi Anda:
| Class | Deskripsi |
|---|---|
[abc] |
Mencocokkan satu karakter dalam set. |
[a-z] |
Mencocokkan satu karakter apa pun dalam rentang. |
[^class] |
Mencocokkan satu karakter yang tidak cocok dengan class. |
[!class] |
Menegasikan class. |
Memperbarui aturan retensi tag yang ada
Untuk mengubah aturan yang ada, gunakan menu Tindakan di samping aturan untuk menonaktifkan, mengedit, atau menghapus aturan tersebut.
Gunakan konsol Harbor untuk mengubah aturan retensi tag yang ada:
- Login ke antarmuka Harbor dengan akun yang memiliki hak istimewa administrator project.
- Buka Projects, lalu pilih project.
- Di jendela project, klik tab Kebijakan, lalu klik Retensi Tag.
Untuk mengubah aturan yang ada, gunakan menu Tindakan untuk memilih salah satu opsi berikut:
- Nonaktifkan: Membuat aturan tidak aktif. Anda dapat mengaktifkan kembali aturan ini nanti.
- Edit: Perbarui setelan aturan yang ada.
- Hapus: Menghapus aturan sepenuhnya.