Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Upgrade the last remaining use of the v2 AWS SDK to v3
The v3 SDK supports the new AWS_ENDPOINT_URL configuration¹ unlike v2.² This is important for CDC's internally-hosted instance of this codebase, where they need to swap out S3 for a local S3-compatible service (e.g. something like Minio, though there are many options). We might also want to do something similar for testing/development in the future. I introduce a more ergonomic API for the S3 operations we use since the modular API provided by v3 can be a little clunky. There's a v2-like API also provided by v3 but not for the operations we need. The changes to signed URL expiration calculations are necessary because the v2 SDK was using an earlier version of the AWS signature algorithm (version 2) and the v3 SDK uses the latest version (version 4). ¹ <https://docs.aws.amazon.com/sdkref/latest/guide/feature-ss-endpoints.html> ² See compatibility table at the bottom of ¹.
- Loading branch information