mirror of
https://github.com/AlistGo/alist.git
synced 2025-12-21 12:40:10 +08:00
This commit introduces comprehensive support for S3 object archive and thaw operations, managed asynchronously through a new task system. - **S3 Transition Task System**: - Adds a new `S3Transition` task configuration, including workers, max retries, and persistence options. - Initializes `S3TransitionTaskManager` to handle asynchronous S3 archive/thaw requests. - Registers dedicated API routes for monitoring S3 transition tasks. - **Integrate S3 Archive/Thaw with Other API**: - Modifies the `Other` API handler to intercept `archive` and `thaw` methods for S3 storage drivers. - Dispatches these operations as `S3TransitionTask` instances to the task manager for background processing. - Returns a task ID to the client for tracking the status of the dispatched operation. - **Refactor `other` package for improved API consistency**: - Exports previously internal structs such as `archiveRequest`, `thawRequest`, `objectDescriptor`, `archiveResponse`, `thawResponse`, and `restoreStatus` by making their names public. - Makes helper functions like `decodeOtherArgs`, `normalizeStorageClass`, and `normalizeRestoreTier` public. - Introduces new constants for various S3 `Other` API methods. |
||
|---|---|---|
| .. | ||
| archive | ||
| authn | ||
| bootstrap | ||
| conf | ||
| db | ||
| device | ||
| driver | ||
| errs | ||
| fs | ||
| fuse | ||
| message | ||
| model | ||
| net | ||
| offline_download | ||
| op | ||
| search | ||
| session | ||
| setting | ||
| sign | ||
| stream | ||
| task | ||