Speicherrichtlinien und Aufbewahrung
Kontingente, Belegung, Aufbewahrungsrichtlinien samt Vorschau und Ausführung, Bereinigung und Löschen von Artefakten.
Die Vorgänge dieser Gruppe mit ihrer Zugriffsregel, Wiederholungsregel, ihren Parametern und Antworten. Jede Anfrage trägt einen Schlüssel: Authorization: Bearer <Schlüssel> (siehe „Authentifizierung“).
Vorgänge
Prüfen, ob ein Artefakt gelöscht werden kann
GET HEAD /api/v1/repositories/{repository}/artifacts/{id}/deletion
Zugriff: Repository-Berechtigung: artifact.delete · Wiederholung: Wiederholen ist sicher (Lesen)
Liefert Name, Größe, Veröffentlichungszeit und aktuelle annotationRevision des Artefakts sowie die blockers, die das Löschen verhindern würden: reference (eine externe Referenz oder die Verwendung durch ein Container-Image, Git LFS oder npm), asset_history (eine aktuelle oder frühere Revision eines Dateipfads), attachment_history oder promotion_stage. Nichts wird geändert; übergeben Sie die Revision an deleteArtifact als expectedAnnotationRevision.
Parameter
| Name | Ort | Typ | Erforderlich | Regeln |
|---|---|---|---|---|
repository | Pfad | string | ja | entspricht ^[a-z0-9][a-z0-9_-]{0,63}$ |
id | Pfad | string (uuid) | ja | — |
Antwort 200
| Feld | Typ | Erforderlich | Regeln |
|---|---|---|---|
id | string (uuid) | ja | — |
name | string | ja | 1–240 Zeichen |
size | string | ja | eine ganze Zahl in Dezimalziffern, als String gesendet |
publishedAt | string (date-time) | ja | — |
annotationRevision | integer | ja | 0–2147483647 |
blockers | Array von string | ja | höchstens 4 Elemente; keine wiederholten Elemente; jedes Element: einer von reference, asset_history, attachment_history, protected_label, promotion_stage |
Antworten: 200, 400, 401, 403, 404, 409, 422, 503, 507
Beispiel
curl -X GET "$ARKVORY_URL/api/v1/repositories/$REPOSITORY/artifacts/$ID/deletion" \
-H "Authorization: Bearer $ARKVORY_TOKEN"Kandidaten der Aufbewahrung in der Vorschau anzeigen
POST /api/v1/repositories/{repository}/retention/preview
Zugriff: Repository-Berechtigung: artifact.delete · Wiederholung: Wiederholen ist sicher (Lesen)
Listet die veröffentlichten Artefakte auf, die vor criteria.publishedBefore veröffentlicht wurden (ein vergangener UTC-Zeitpunkt mit Millisekunden), nach ID geordnet, jeweils mit ihrer Annotationsrevision und ihren Blockern; protected_label bedeutet eines der criteria.protectedLabels (eine explizite Liste mit bis zu 32 Einträgen). Seiten enthalten limit Einträge (1–100, Standard 50); weiter mit after = next. Nichts wird reserviert: Wählen Sie die zu löschenden Einträge aus und übergeben Sie sie mit ihren Revisionen an applyRetention, das sie erneut prüft.
Parameter
| Name | Ort | Typ | Erforderlich | Regeln |
|---|---|---|---|---|
repository | Pfad | string | ja | entspricht ^[a-z0-9][a-z0-9_-]{0,63}$ |
Anfragetext (application/json)
| Feld | Typ | Erforderlich | Regeln |
|---|---|---|---|
criteria | object | ja | — |
criteria.publishedBefore | string (date-time) | ja | entspricht ^\d{4}-\d\d-\d\dT\d\d:\d\d:\d\d\.\d{3}Z$ |
criteria.protectedLabels | Array von string | ja | höchstens 32 Elemente; keine wiederholten Elemente; jedes Element: 1–64 Zeichen |
limit | integer | nein | 1–100 |
after | string (uuid) | nein | — |
Antwort 200
| Feld | Typ | Erforderlich | Regeln |
|---|---|---|---|
items | Array von object | ja | höchstens 100 Elemente |
items[].id | string (uuid) | ja | — |
items[].name | string | ja | 1–240 Zeichen |
items[].size | string | ja | eine ganze Zahl in Dezimalziffern, als String gesendet |
items[].publishedAt | string (date-time) | ja | — |
items[].annotationRevision | integer | ja | 0–2147483647 |
items[].blockers | Array von string | ja | höchstens 4 Elemente; keine wiederholten Elemente; jedes Element: einer von reference, asset_history, attachment_history, protected_label, promotion_stage |
next | string (uuid) | ja | darf null sein |
Antworten: 200, 400, 401, 403, 404, 405, 409, 413, 415, 422, 503, 507
Beispiel
curl -X POST "$ARKVORY_URL/api/v1/repositories/$REPOSITORY/retention/preview" \
-H "Authorization: Bearer $ARKVORY_TOKEN" \
-H "Content-Type: application/json" \
-d '{"criteria":{"publishedBefore":"2026-01-01T00:00:00.000Z","protectedLabels":[]}}'Ausgewählte Kandidaten der Aufbewahrung löschen
POST /api/v1/repositories/{repository}/retention/apply
Zugriff: Repository-Berechtigung: artifact.delete · Wiederholung: Wiederholen ist sicher: Dieselbe Anfrage hat dieselbe Wirkung
Prüft 1–100 aus previewRetention gewählte Artefakte (items mit id und expectedAnnotationRevision) erneut gegen dieselben criteria und löscht die infrage kommenden in einer Transaktion logisch. Jeder Eintrag erhält ein outcome: deleted, already_deleted, changed (die Annotationen haben sich geändert), not_eligible (zu spät veröffentlicht), protected mit seinen Blockern oder not_found. Die Bytes bleiben reserviert, bis die Online-Bereinigung des Repositorys sie freigibt.
Parameter
| Name | Ort | Typ | Erforderlich | Regeln |
|---|---|---|---|---|
repository | Pfad | string | ja | entspricht ^[a-z0-9][a-z0-9_-]{0,63}$ |
Anfragetext (application/json)
| Feld | Typ | Erforderlich | Regeln |
|---|---|---|---|
criteria | object | ja | — |
criteria.publishedBefore | string (date-time) | ja | entspricht ^\d{4}-\d\d-\d\dT\d\d:\d\d:\d\d\.\d{3}Z$ |
criteria.protectedLabels | Array von string | ja | höchstens 32 Elemente; keine wiederholten Elemente; jedes Element: 1–64 Zeichen |
items | Array von object | ja | 1–100 Elemente |
items[].id | string (uuid) | ja | — |
items[].expectedAnnotationRevision | integer | ja | 0–2147483647 |
Antwort 200
| Feld | Typ | Erforderlich | Regeln |
|---|---|---|---|
items | Array von object | ja | 1–100 Elemente |
items[].id | string (uuid) | ja | — |
items[].outcome | string | ja | einer von deleted, already_deleted, protected, changed, not_eligible, not_found |
items[].blockers | Array von string | ja | höchstens 4 Elemente; keine wiederholten Elemente; jedes Element: einer von reference, asset_history, attachment_history, protected_label, promotion_stage |
Antworten: 200, 400, 401, 403, 404, 405, 409, 413, 415, 422, 503, 507
Beispiel
curl -X POST "$ARKVORY_URL/api/v1/repositories/$REPOSITORY/retention/apply" \
-H "Authorization: Bearer $ARKVORY_TOKEN" \
-H "Content-Type: application/json" \
-d '{"criteria":{"publishedBefore":"2026-01-01T00:00:00.000Z","protectedLabels":[]},"items":[{"id":"00000000-0000-4000-8000-000000000000","expectedAnnotationRevision":0}]}'Speicherrichtlinie abrufen
GET HEAD /api/v1/repositories/{repository}/storage/policy
Zugriff: Repository-Berechtigung: storage.read · Wiederholung: Wiederholen ist sicher (Lesen)
Liefert die Einstellungen der automatischen Bereinigung und des Kontingents des Repositorys mit ihrer revision, den nächsten und den letzten geplanten Lauf, wie viele Builds der letzte Lauf gelöscht hat, und dessen Fehler. Standardmäßig ist die Richtlinie deaktiviert, und es gibt kein Kontingent für das Repository (die serverweite Kapazität gilt weiterhin).
Parameter
| Name | Ort | Typ | Erforderlich | Regeln |
|---|---|---|---|---|
repository | Pfad | string | ja | entspricht ^[a-z0-9][a-z0-9_-]{0,63}$ |
Antwort 200
| Feld | Typ | Erforderlich | Regeln |
|---|---|---|---|
revision | integer | ja | 0–2147483647 |
policy | object | ja | — |
policy.enabled | boolean | ja | — |
policy.grouping | string | ja | einer von package-channel, package, repository |
policy.keepLast | integer | ja | 1–100000 |
policy.channels | Array von object | ja | höchstens 32 Elemente |
policy.channels[].label | string | ja | 1–64 Zeichen |
policy.channels[].keepLast | integer | ja | 1–100000 |
policy.protectedLabels | Array von string | ja | höchstens 32 Elemente; keine wiederholten Elemente; jedes Element: 1–64 Zeichen |
policy.minAgeHours | integer | ja | 0–87600 |
policy.intervalMinutes | integer | ja | 1–10080 |
policy.quotaBytes | string | ja | eine ganze Zahl in Dezimalziffern, als String gesendet; darf null sein |
policy.warningPercent | integer | ja | 1–98 |
policy.criticalPercent | integer | ja | 2–99 |
nextRunAt | string (date-time) | ja | darf null sein |
lastRunAt | string (date-time) | ja | darf null sein |
lastDeleted | integer | ja | 0–100 |
lastError | string | ja | höchstens 64 Zeichen; darf null sein |
Antworten: 200, 400, 401, 403, 404, 409, 422, 503, 507
Beispiel
curl -X GET "$ARKVORY_URL/api/v1/repositories/$REPOSITORY/storage/policy" \
-H "Authorization: Bearer $ARKVORY_TOKEN"Speicherrichtlinie ersetzen
PUT /api/v1/repositories/{repository}/storage/policy
Zugriff: Repository-Berechtigung: storage.manage · Wiederholung: Nur mit der erwarteten Revision wiederholen (compare-and-swap)
Ersetzt die gesamte Richtlinie: Behalten werden die letzten keepLast registrierten UPack-Builds je Paket, je Kanal-Label (channels) oder je Repository (grouping); protectedLabels und Builds, die jünger als minAgeHours sind, werden nie gelöscht; der Lauf erfolgt alle intervalMinutes, und das Repository wird mit quotaBytes (eine Dezimalzeichenfolge, null für keines) und seinen Warnschwellen begrenzt. expectedRevision muss die aktuelle Revision sein, sonst 409 revision_mismatch. Das Aktivieren erfordert außerdem artifact.delete und bindet den Zeitplan an den aufrufenden verwalteten Schlüssel: Wird dieser Schlüssel widerrufen, läuft er ab oder verliert er diese Berechtigungen, stoppt das geplante Löschen, bis die Richtlinie mit einem anderen Schlüssel gespeichert wird. Gewöhnliche Dateien zählen auf das Kontingent, werden von ihm aber nie gelöscht.
Parameter
| Name | Ort | Typ | Erforderlich | Regeln |
|---|---|---|---|---|
repository | Pfad | string | ja | entspricht ^[a-z0-9][a-z0-9_-]{0,63}$ |
Anfragetext (application/json)
| Feld | Typ | Erforderlich | Regeln |
|---|---|---|---|
expectedRevision | integer | ja | 0–2147483647 |
policy | object | ja | — |
policy.enabled | boolean | ja | — |
policy.grouping | string | ja | einer von package-channel, package, repository |
policy.keepLast | integer | ja | 1–100000 |
policy.channels | Array von object | ja | höchstens 32 Elemente |
policy.channels[].label | string | ja | 1–64 Zeichen |
policy.channels[].keepLast | integer | ja | 1–100000 |
policy.protectedLabels | Array von string | ja | höchstens 32 Elemente; keine wiederholten Elemente; jedes Element: 1–64 Zeichen |
policy.minAgeHours | integer | ja | 0–87600 |
policy.intervalMinutes | integer | ja | 1–10080 |
policy.quotaBytes | string | ja | eine ganze Zahl in Dezimalziffern, als String gesendet; darf null sein |
policy.warningPercent | integer | ja | 1–98 |
policy.criticalPercent | integer | ja | 2–99 |
Antwort 200
| Feld | Typ | Erforderlich | Regeln |
|---|---|---|---|
revision | integer | ja | 0–2147483647 |
policy | object | ja | — |
policy.enabled | boolean | ja | — |
policy.grouping | string | ja | einer von package-channel, package, repository |
policy.keepLast | integer | ja | 1–100000 |
policy.channels | Array von object | ja | höchstens 32 Elemente |
policy.channels[].label | string | ja | 1–64 Zeichen |
policy.channels[].keepLast | integer | ja | 1–100000 |
policy.protectedLabels | Array von string | ja | höchstens 32 Elemente; keine wiederholten Elemente; jedes Element: 1–64 Zeichen |
policy.minAgeHours | integer | ja | 0–87600 |
policy.intervalMinutes | integer | ja | 1–10080 |
policy.quotaBytes | string | ja | eine ganze Zahl in Dezimalziffern, als String gesendet; darf null sein |
policy.warningPercent | integer | ja | 1–98 |
policy.criticalPercent | integer | ja | 2–99 |
nextRunAt | string (date-time) | ja | darf null sein |
lastRunAt | string (date-time) | ja | darf null sein |
lastDeleted | integer | ja | 0–100 |
lastError | string | ja | höchstens 64 Zeichen; darf null sein |
Antworten: 200, 400, 401, 403, 404, 405, 409, 413, 415, 422, 503, 507
Beispiel
curl -X PUT "$ARKVORY_URL/api/v1/repositories/$REPOSITORY/storage/policy" \
-H "Authorization: Bearer $ARKVORY_TOKEN" \
-H "Content-Type: application/json" \
-d '{"expectedRevision":0,"policy":{"enabled":false,"grouping":"package-channel","keepLast":1,"channels":[],"protectedLabels":[],"minAgeHours":0,"intervalMinutes":1,"quotaBytes":"1024","warningPercent":1,"criticalPercent":2}}'Speichernutzung eines Repositorys abrufen
GET HEAD /api/v1/repositories/{repository}/storage/usage
Zugriff: Repository-Berechtigung: storage.read · Wiederholung: Wiederholen ist sicher (Lesen)
Liefert die vom Repository reservierten Bytes als Dezimalzeichenfolgen: veröffentlicht, ausstehende Uploads und ausgemustert (gelöscht oder abgebrochen, noch nicht freigegeben), ihre Summe reservedBytes, das Kontingent und einen state (unlimited, normal, warning, critical, exceeded). Das ist die logische Reservierung, die auf das Kontingent angerechnet wird, nicht der auf dem Datenträger belegte Platz.
Parameter
| Name | Ort | Typ | Erforderlich | Regeln |
|---|---|---|---|---|
repository | Pfad | string | ja | entspricht ^[a-z0-9][a-z0-9_-]{0,63}$ |
Antwort 200
| Feld | Typ | Erforderlich | Regeln |
|---|---|---|---|
publishedBytes | string | ja | eine ganze Zahl in Dezimalziffern, als String gesendet |
pendingBytes | string | ja | eine ganze Zahl in Dezimalziffern, als String gesendet |
retiredBytes | string | ja | eine ganze Zahl in Dezimalziffern, als String gesendet |
reservedBytes | string | ja | eine ganze Zahl in Dezimalziffern, als String gesendet |
quotaBytes | string | ja | eine ganze Zahl in Dezimalziffern, als String gesendet; darf null sein |
state | string | ja | einer von unlimited, normal, warning, critical, exceeded |
Antworten: 200, 400, 401, 403, 404, 409, 422, 503, 507
Beispiel
curl -X GET "$ARKVORY_URL/api/v1/repositories/$REPOSITORY/storage/usage" \
-H "Authorization: Bearer $ARKVORY_TOKEN"Vorschau anzeigen, was die Speicherrichtlinie löschen würde
GET HEAD /api/v1/repositories/{repository}/storage/preview
Zugriff: Repository-Berechtigung: artifact.delete · Wiederholung: Wiederholen ist sicher (Lesen)
Liefert bis zu 100 registrierte Builds, die die gespeicherte Richtlinie jetzt löschen würde (auch wenn sie deaktiviert ist), mit der revision der Richtlinie und hasMore; Builds, die durch Referenzen, Dateipfade, Anhänge, geschützte Labels oder ihr Alter gehalten werden, sind ausgelassen. Nichts wird reserviert: Ein Lauf ermittelt die Rangfolge der Builds neu.
Parameter
| Name | Ort | Typ | Erforderlich | Regeln |
|---|---|---|---|---|
repository | Pfad | string | ja | entspricht ^[a-z0-9][a-z0-9_-]{0,63}$ |
Antwort 200
| Feld | Typ | Erforderlich | Regeln |
|---|---|---|---|
revision | integer | ja | 0–2147483647 |
items | Array von object | ja | höchstens 100 Elemente |
items[].id | string (uuid) | ja | — |
items[].name | string | ja | höchstens 240 Zeichen |
items[].size | string | ja | eine ganze Zahl in Dezimalziffern, als String gesendet |
items[].publishedAt | string (date-time) | ja | — |
items[].annotationRevision | integer | ja | 0–2147483647 |
items[].blockers | Array von string | ja | höchstens 0 Elemente |
hasMore | boolean | ja | — |
Antworten: 200, 400, 401, 403, 404, 409, 422, 503, 507
Beispiel
curl -X GET "$ARKVORY_URL/api/v1/repositories/$REPOSITORY/storage/preview" \
-H "Authorization: Bearer $ARKVORY_TOKEN"Speicherrichtlinie jetzt ausführen
POST /api/v1/repositories/{repository}/storage/run
Zugriff: Repository-Berechtigung: storage.manage, artifact.delete · Wiederholung: Nicht automatisch wiederholen
Führt sofort einen Batch der aktivierten Richtlinie aus, statt auf den Zeitplan zu warten: Er ermittelt die Rangfolge der Builds neu, prüft Berechtigungen und Abhängigkeiten und löscht bis zu 100 logisch, mit einem Ergebnis je Eintrag. expectedRevision muss die aktuelle Revision der Richtlinie sein, und die Richtlinie muss aktiviert sein, sonst 409. Die Bytes werden später von der Online-Bereinigung des Repositorys freigegeben, die eine eigene Richtlinie hat (setCleanup).
Parameter
| Name | Ort | Typ | Erforderlich | Regeln |
|---|---|---|---|---|
repository | Pfad | string | ja | entspricht ^[a-z0-9][a-z0-9_-]{0,63}$ |
Anfragetext (application/json)
| Feld | Typ | Erforderlich | Regeln |
|---|---|---|---|
expectedRevision | integer | ja | 0–2147483647 |
Antwort 200
| Feld | Typ | Erforderlich | Regeln |
|---|---|---|---|
items | Array von object | ja | höchstens 100 Elemente |
items[].id | string (uuid) | ja | — |
items[].outcome | string | ja | einer von deleted, already_deleted, protected, changed, not_eligible, not_found |
items[].blockers | Array von string | ja | höchstens 4 Elemente; jedes Element: einer von reference, asset_history, attachment_history, protected_label, promotion_stage |
Antworten: 200, 400, 401, 403, 404, 405, 409, 413, 415, 422, 503, 507
Beispiel
curl -X POST "$ARKVORY_URL/api/v1/repositories/$REPOSITORY/storage/run" \
-H "Authorization: Bearer $ARKVORY_TOKEN" \
-H "Content-Type: application/json" \
-d '{"expectedRevision":0}'Speicherereignisse eines Repositorys auflisten
GET HEAD /api/v1/repositories/{repository}/storage/events
Zugriff: Repository-Berechtigung: diagnostics.read · Wiederholung: Wiederholen ist sicher (Lesen)
Liefert bis zu 100 Diagnoseereignisse zu Speicherrichtlinien, Kontingenten, Aufbewahrung und Bereinigung nach der Sequenz after (Standard 0), älteste zuerst, jeweils mit Schweregrad, Code und einigen Details; level (info, warning, error) filtert sie, weiter mit after = next. Es werden nur die neuesten 1000 Ereignisse je Repository und 20.000 insgesamt aufbewahrt; exportieren Sie sie daher, wenn Sie sie länger benötigen.
Parameter
| Name | Ort | Typ | Erforderlich | Regeln |
|---|---|---|---|---|
repository | Pfad | string | ja | entspricht ^[a-z0-9][a-z0-9_-]{0,63}$ |
after | Query | string | nein | eine ganze Zahl in Dezimalziffern, als String gesendet |
level | Query | string | nein | einer von info, warning, error |
Antwort 200
| Feld | Typ | Erforderlich | Regeln |
|---|---|---|---|
items | Array von object | ja | höchstens 100 Elemente |
items[].sequence | string | ja | eine ganze Zahl in Dezimalziffern, als String gesendet |
items[].occurredAt | string (date-time) | ja | — |
items[].level | string | ja | einer von info, warning, error |
items[].code | string | ja | höchstens 96 Zeichen |
items[].details | Map von string | integer | ja | höchstens 16 Einträge |
next | string | ja | eine ganze Zahl in Dezimalziffern, als String gesendet; darf null sein |
Antworten: 200, 400, 401, 403, 404, 409, 422, 503, 507
Beispiel
curl -X GET "$ARKVORY_URL/api/v1/repositories/$REPOSITORY/storage/events" \
-H "Authorization: Bearer $ARKVORY_TOKEN"Einstellungen der Online-Bereinigung abrufen
GET HEAD /api/v1/repositories/{repository}/storage/cleanup
Zugriff: Repository-Berechtigung: storage.read · Wiederholung: Wiederholen ist sicher (Lesen)
Liefert die Online-Bereinigungsrichtlinie des Repositorys mit ihrer revision (enabled, graceHours, batchSize, intervalSeconds, delayMilliseconds), den letzten und den nächsten Lauf sowie wie viele Objekte der letzte Batch freigegeben hat, wie viele zurückgestellt wurden oder fehlschlugen, und die freigegebenen Bytes. Die Bereinigung entfernt abgebrochene Uploads und gelöschte Artefakte physisch; standardmäßig ist sie aus.
Parameter
| Name | Ort | Typ | Erforderlich | Regeln |
|---|---|---|---|---|
repository | Pfad | string | ja | entspricht ^[a-z0-9][a-z0-9_-]{0,63}$ |
Antwort 200
| Feld | Typ | Erforderlich | Regeln |
|---|---|---|---|
revision | integer | ja | 0–2147483647 |
policy | object | ja | — |
policy.enabled | boolean | ja | — |
policy.graceHours | integer | ja | 0–8760 |
policy.batchSize | integer | ja | 1–100 |
policy.intervalSeconds | integer | ja | 5–86400 |
policy.delayMilliseconds | integer | ja | 0–1000 |
lastRunAt | string (date-time) | ja | darf null sein |
nextRunAt | string (date-time) | ja | darf null sein |
lastCollected | integer | ja | 0–100 |
lastDeferred | integer | ja | 0–100 |
lastFailed | integer | ja | 0–100 |
lastReclaimedBytes | string | ja | eine ganze Zahl in Dezimalziffern, als String gesendet |
lastError | string | ja | darf null sein |
Antworten: 200, 400, 401, 403, 404, 409, 422, 503, 507
Beispiel
curl -X GET "$ARKVORY_URL/api/v1/repositories/$REPOSITORY/storage/cleanup" \
-H "Authorization: Bearer $ARKVORY_TOKEN"Online-Bereinigung konfigurieren
PUT /api/v1/repositories/{repository}/storage/cleanup
Zugriff: Repository-Berechtigung: storage.manage · Wiederholung: Nur mit der erwarteten Revision wiederholen (compare-and-swap)
Ersetzt die Bereinigungsrichtlinie, während der Server läuft: enabled (auch zum Pausieren), graceHours (0–8760, wie lange gelöschter Inhalt vor dem Entfernen bestehen bleibt), batchSize (1–100 Objekte), intervalSeconds (5–86400) und delayMilliseconds (0–1000 zwischen den Objekten). expectedRevision muss die aktuelle Revision sein (0 vor der ersten Änderung), sonst 409 revision_mismatch. Eine Änderung wirkt zwischen zwei Objekten, nie mitten in einem.
Parameter
| Name | Ort | Typ | Erforderlich | Regeln |
|---|---|---|---|---|
repository | Pfad | string | ja | entspricht ^[a-z0-9][a-z0-9_-]{0,63}$ |
Anfragetext (application/json)
| Feld | Typ | Erforderlich | Regeln |
|---|---|---|---|
expectedRevision | integer | ja | 0–2147483647 |
policy | object | ja | — |
policy.enabled | boolean | ja | — |
policy.graceHours | integer | ja | 0–8760 |
policy.batchSize | integer | ja | 1–100 |
policy.intervalSeconds | integer | ja | 5–86400 |
policy.delayMilliseconds | integer | ja | 0–1000 |
Antwort 200
| Feld | Typ | Erforderlich | Regeln |
|---|---|---|---|
revision | integer | ja | 0–2147483647 |
policy | object | ja | — |
policy.enabled | boolean | ja | — |
policy.graceHours | integer | ja | 0–8760 |
policy.batchSize | integer | ja | 1–100 |
policy.intervalSeconds | integer | ja | 5–86400 |
policy.delayMilliseconds | integer | ja | 0–1000 |
lastRunAt | string (date-time) | ja | darf null sein |
nextRunAt | string (date-time) | ja | darf null sein |
lastCollected | integer | ja | 0–100 |
lastDeferred | integer | ja | 0–100 |
lastFailed | integer | ja | 0–100 |
lastReclaimedBytes | string | ja | eine ganze Zahl in Dezimalziffern, als String gesendet |
lastError | string | ja | darf null sein |
Antworten: 200, 400, 401, 403, 404, 405, 409, 413, 415, 422, 503, 507
Beispiel
curl -X PUT "$ARKVORY_URL/api/v1/repositories/$REPOSITORY/storage/cleanup" \
-H "Authorization: Bearer $ARKVORY_TOKEN" \
-H "Content-Type: application/json" \
-d '{"expectedRevision":0,"policy":{"enabled":false,"graceHours":0,"batchSize":1,"intervalSeconds":5,"delayMilliseconds":0}}'Einen Bereinigungs-Batch jetzt anfordern
POST /api/v1/repositories/{repository}/storage/cleanup/run
Zugriff: Repository-Berechtigung: storage.manage · Wiederholung: Nicht automatisch wiederholen
Plant den nächsten Batch der aktivierten Bereinigungsrichtlinie zum sofortigen Start; die Antwort ist der Bereinigungszustand, und die Bytes werden erst freigegeben, wenn der Batch gelaufen ist (siehe lastRunAt in getCleanup). expectedRevision muss die aktuelle Revision sein; eine deaktivierte Bereinigung ergibt 409 state_conflict. Objekte, die gerade gelesen oder geschrieben werden, werden auf einen späteren Batch verschoben.
Parameter
| Name | Ort | Typ | Erforderlich | Regeln |
|---|---|---|---|---|
repository | Pfad | string | ja | entspricht ^[a-z0-9][a-z0-9_-]{0,63}$ |
Anfragetext (application/json)
| Feld | Typ | Erforderlich | Regeln |
|---|---|---|---|
expectedRevision | integer | ja | 0–2147483647 |
Antwort 200
| Feld | Typ | Erforderlich | Regeln |
|---|---|---|---|
revision | integer | ja | 0–2147483647 |
policy | object | ja | — |
policy.enabled | boolean | ja | — |
policy.graceHours | integer | ja | 0–8760 |
policy.batchSize | integer | ja | 1–100 |
policy.intervalSeconds | integer | ja | 5–86400 |
policy.delayMilliseconds | integer | ja | 0–1000 |
lastRunAt | string (date-time) | ja | darf null sein |
nextRunAt | string (date-time) | ja | darf null sein |
lastCollected | integer | ja | 0–100 |
lastDeferred | integer | ja | 0–100 |
lastFailed | integer | ja | 0–100 |
lastReclaimedBytes | string | ja | eine ganze Zahl in Dezimalziffern, als String gesendet |
lastError | string | ja | darf null sein |
Antworten: 200, 400, 401, 403, 404, 405, 409, 413, 415, 422, 503, 507
Beispiel
curl -X POST "$ARKVORY_URL/api/v1/repositories/$REPOSITORY/storage/cleanup/run" \
-H "Authorization: Bearer $ARKVORY_TOKEN" \
-H "Content-Type: application/json" \
-d '{"expectedRevision":0}'