aboutsummaryrefslogtreecommitdiff
path: root/doc
diff options
context:
space:
mode:
authorAlex Auvolat <lx@deuxfleurs.fr>2025-01-30 17:45:54 +0100
committerAlex Auvolat <lx@deuxfleurs.fr>2025-02-03 18:54:51 +0100
commitbdaf55ab3f866234bd5a7d585758265a88d2906a (patch)
treee5160b9cc4ca312c6c649989b80d4ba7e6490559 /doc
parente96014ca60331b50a5a67383589ba5b1c74018d0 (diff)
downloadgarage-bdaf55ab3f866234bd5a7d585758265a88d2906a.tar.gz
garage-bdaf55ab3f866234bd5a7d585758265a88d2906a.zip
cli_v2: migrate cleanupincompleteuploads to Admin API
admin api: add CleanupIncompleteUploads spec
Diffstat (limited to 'doc')
-rw-r--r--doc/api/garage-admin-v2.yml40
-rw-r--r--doc/drafts/admin-api.md22
2 files changed, 62 insertions, 0 deletions
diff --git a/doc/api/garage-admin-v2.yml b/doc/api/garage-admin-v2.yml
index 725c1d01..f9e3c10c 100644
--- a/doc/api/garage-admin-v2.yml
+++ b/doc/api/garage-admin-v2.yml
@@ -826,6 +826,46 @@ paths:
schema:
$ref: '#/components/schemas/BucketInfo'
+ /CleanupIncompleteUploads:
+ post:
+ tags:
+ - Bucket
+ operationId: "CleanupIncompleteUploads"
+ summary: "Cleanup incomplete uploads in a bucket"
+ description: |
+ Cleanup all incomplete uploads in a bucket that are older than a specified number of seconds
+ requestBody:
+ description: |
+ Bucket id and minimum age of uploads to delete (in seconds)
+ required: true
+ content:
+ application/json:
+ schema:
+ type: object
+ required: [bucketId, olderThanSecs]
+ properties:
+ bucketId:
+ type: string
+ example: "e6a14cd6a27f48684579ec6b381c078ab11697e6bc8513b72b2f5307e25fff9b"
+ olderThanSecs:
+ type: integer
+ example: "3600"
+ responses:
+ '500':
+ description: "The server can not handle your request. Check your connectivity with the rest of the cluster."
+ '400':
+ description: "The payload is not formatted correctly"
+ '200':
+ description: "The bucket was cleaned up successfully"
+ content:
+ application/json:
+ schema:
+ type: object
+ properties:
+ uploadsDeleted:
+ type: integer
+ example: 12
+
/AllowBucketKey:
post:
tags:
diff --git a/doc/drafts/admin-api.md b/doc/drafts/admin-api.md
index eb327307..029c7ddd 100644
--- a/doc/drafts/admin-api.md
+++ b/doc/drafts/admin-api.md
@@ -702,6 +702,28 @@ Deletes a storage bucket. A bucket cannot be deleted if it is not empty.
Warning: this will delete all aliases associated with the bucket!
+#### CleanupIncompleteUploads `POST /v2/CleanupIncompleteUploads`
+
+Cleanup all incomplete uploads in a bucket that are older than a specified number
+of seconds.
+
+Request body format:
+
+```json
+{
+ "bucketId": "e6a14cd6a27f48684579ec6b381c078ab11697e6bc8513b72b2f5307e25fff9b",
+ "olderThanSecs": 3600
+}
+```
+
+Response format
+
+```json
+{
+ "uploadsDeleted": 12
+}
+```
+
### Operations on permissions for keys on buckets