Prosedür
Artifact retention politikasını dry-run, yürütme ve restore kanıtıyla yönetin
Repository kapsamı, retention, pattern, keep-last, schedule ve archive-on-delete kurallarını güvenli bir cleanup akışında uygulayın.

Rol ve ön koşullar
Politika oluşturma/değiştirme ManageCleanupPolicy, dry-run veya çalıştırma RunCleanup yetkisi gerektirir.
- Politika tüm repository'ler, tek repository veya Hosted/Proxy/Group tipi kapsamlarından yalnız birini seçmelidir.
- En az retentionDays, matchPattern veya keepLastVersions kuralından biri tanımlanmalıdır; archive açıksa archiveTarget zorunludur.
- Hedef artifact'ların checksum, kullanım ve geri yükleme kanıtı için test paketi önceden kaydedilmelidir.
Uygulama adımları
- Cleanup Policies içinde scope, retention, keep-last, match/exclude, schedule ve archive ayarlarını girin; Affected Repositories önizlemesini inceleyin.
- Desteklenen dry-run API'sini çalıştırın; task tamamlanınca candidateCount değerini ve hedef örneklerini politika beklentinizle karşılaştırın. Dry-run storage veya metadata değiştirmemelidir.
- Kapsam doğruysa Run now işlemini onaylayın. Aynı policy için yalnız bir PENDING/RUNNING run oluştuğunu kontrol edin.
- Tasks > Cleanup & Storage üzerinde processed, deleted metadata/storage, archived ve failed sayaçlarını takip edin.
- Archive kapalıysa metadata DELETED ve active object silinmiş; archive açıksa metadata ARCHIVED ve object archive namespace'e taşınmış olmalıdır.
- Restore doğrulaması için aynı paketi normal publish/upload yoluyla yeniden sağlayın; permission, format, checksum ve overwrite kontrollerinden sonra ACTIVE ve RESTORED olduğunu doğrulayın.
Başarı ölçütleri
- Run COMPLETED olur; candidateCount, processedCount ve sonuç sayaçları tutarlıdır.
- Her işlenen artifact için cleanup_run_item ve CLEANUP_DELETE veya CLEANUP_ARCHIVE lifecycle kaydı bulunur.
- CLEANUP_RUN_STARTED/COMPLETED audit ve CLEANUP operation log kayıtları job id ile ilişkilidir.
- Node kaybı testi yapılırsa cursor ve PostgreSQL lease sayesinde kalan iş başka replica tarafından sürdürülebilir.
Hata ve güvenlik sınırları
- Disabled politika ve eşzamanlı ikinci run reddedilir; tek aktif run kuralı veritabanı tarafından da korunur.
- Item hatası tüm run'ı durdurmaz; hata kaydedilir ve artifact önceki durumunda kalır.
- Arşiv nesnesi aktif package endpoint'inden sunulmaz; yalnız dosyanın archive dizininde bulunması metadata'yı etkinleştirmez.
- SQL LIKE pattern ve keep-last davranışı örnek veriyle doğrulanmadan geniş scope'lu gerçek run başlatılmamalıdır.