Janitor

Findet verwaiste Uploads und unreferenzierte Dokumente in Payload-Storage und löscht nur die freigegebenen Einträge.

Community 2 MIT v0.1.0

Installation

pnpm add @seshuk/payload-plugin-janitor

Über

Janitor durchsucht ein Payload-Projekt nach Dateien und Dokumenten, auf die nichts mehr verweist: Objekte im Bucket, deren Dokument entfernt wurde, defekte Uploads und Datensätze, die kein anderes Dokument referenziert. Jeder Fund wird in einer Findings-Collection abgelegt. Vor dem Löschen prüft also jemand im Admin die Liste. Gelöscht wird ausschließlich, was als freigegeben markiert ist. Das Plugin ergänzt die Config um zwei Collections, eine für Findings und eine für Scan-Läufe, und umschließt die bestehenden Upload-Collections, damit es die Dateireferenzen nachverfolgen kann. Ein Job-Task in der Jobs-Queue von Payload führt die Scans aus. Ein Dashboard-Widget und eine Feldhervorhebung zeigen den aktuellen Stand im Admin-Panel. Scans lassen sich außerdem im Code mit runJanitor oder startJanitor starten. purgeApproved entfernt die freigegebenen Funde. Für Hilfsaufgaben stehen scanStorage, buildUsageIndex und findUsage zur Verfügung. Der Zugriff auf den Storage läuft über Adapter. Für S3, Cloudflare R2, Bunny, Azure Blob, Google Cloud Storage, UploadThing, Vercel Blob und lokale Festplatten gibt es jeweils einen eigenen Einstiegspunkt. Der S3-Adapter setzt die Installation von @aws-sdk/client-s3 voraus. Mit enabled: false bleiben Collections und Übersetzungen erhalten, die Admin- und Job-Hooks werden aber nicht ausgeführt. Das Paket steht in Version 1.0.0-beta.1, Optionsnamen und Verhalten können sich daher bis zu einem stabilen Release noch ändern. Die Lizenz ist MIT, Node 24.15 oder neuer ist erforderlich.

Paketinformationen

Paketname
@seshuk/payload-plugin-janitor
Neueste Version
0.1.0
Entpackte Größe
1,6 MB
Lizenz
MIT
Zuletzt veröffentlicht
14. Okt. 2026

Mehr von maximseshuk

Profil ansehen

Ähnliche Plugins

Mehr in Storage