fleet/server/datastore
Anthony Maxwell 41fd8409e9
Feat: Perform S3 Uploads with Upload Manager (#32010)
# Overview

This PR implements the S3 upload manager under-the-hood of our
`datastore/s3` client's `Put()` method.

# Description

As surfaced by #31667, the current S3 implementation utilizes the `PUT`
operation which means services, such as MinIO, take issue with attempted
uploads that are [too
large](https://github.com/minio/minio/blob/master/cmd/streaming-signature-v4.go#L260).
The `PUT` operation can also present challenges in memory-constrained
environments as the entire upload target is read into memory before it's
shipped.

# Notes

- See the `TODO` comment section, there's more cool stuff we can and
should do with this in the future!

# Standard Pull Request Details

## Testing

- [x] QA'd all new/changed functionality manually

For unreleased bug fixes in a release candidate, one of:

- [x] Confirmed that the fix is not expected to adversely impact load
test results

---------

Signed-off-by: Illbjorn <am@hades.so>
2025-08-20 15:20:53 -04:00
..
cached_mysql Enable staticcheck Go linter. (#23487) 2024-11-05 11:16:24 -06:00
filesystem Added signed URLs (#25197) 2025-01-09 12:56:54 -06:00
mysql Don't pass the default deb auto-install policy if install status is e.g. uninstalled (#32005) 2025-08-18 17:37:06 -05:00
mysqlredis Refactor EnrollOrbit/EnrollHost (#30872) 2025-07-15 17:22:02 -03:00
redis Add macOS redis cluster support (#29433) 2025-05-27 11:38:59 -04:00
s3 Feat: Perform S3 Uploads with Upload Manager (#32010) 2025-08-20 15:20:53 -04:00