googleapis / googleapis/google-cloud-rust
Resumable uploads under application control
- Dominant language
- Rust
- Stars
- 955
- Forks
- 144
- Avg merge
- 1d 5h
- Merged PRs (30d)
- 279
Description
We would like the application to start uploads and continue them after the application restarts. The API should support something like:
```rust
// The application can checkpoint `id` in a database or other persistent storage, to resume after a restart.
let id: String = client.start_upload("bucket", "object").await?;
// Requires the payload to implement `Seek`. Unlike most uploads this does not finalize the upload if the stream is closed.
let payload = tokio::fs::File::open("my-file.txt").await?;
let status = client.continue_upload("bucket", "object", id, payload).send().await?;
// Object is only finalized explicitly. The final payload *could* be empty.
let empty_payload = "";
let object = client.finalize_upload("bucket", "object", id, empty_payload).send().await?;
```
Contributor guide
Assessment
This issue has not been assessed yet.