Replace fog-aws with some implementation that uses the AWS SDK
Currently fog-aws re-implements a lot of what the AWS SDK does, but it doesn't support a lot of functionality, such as the ability to configure STS endpoints: https://docs.aws.amazon.com/sdkref/latest/guide/ss-endpoints-table.html
I've suggested in https://github.com/fog/fog-aws/pull/721#issuecomment-2315909148 that we replace the fog-aws CredentialFetcher
with one that uses the AWS SDK: https://github.com/fog/fog-aws/blob/95b15032a746cac1f29c3bff3a6c758e9bd5c109/lib/fog/aws/credential_fetcher.rb#L49
In an ideal world we ditch fog-aws
completely, but perhaps we could consider this transition plan:
- Add support for STS URL endpoints in fog-aws:
✅ done in https://github.com/fog/fog-aws/pull/724 and !165708 (merged). - Add an optional credential fetcher option in fog-aws so we can pass in a fetcher that uses the AWS SDK. Possible, but perhaps not ideal: https://github.com/fog/fog-aws/issues/723#issuecomment-2336810001
- Remove the need for fog-aws or re-implement a new
fog-aws-sdk
that uses the AWS SDK completely. Started prototyping on this; doesn't seem that bad.
ZD: https://gitlab-federal-support.zendesk.com/agent/tickets/9684
Edited by Stan Hu