rahil-c commented on code in PR #8441:
URL: https://github.com/apache/hudi/pull/8441#discussion_r1171945368
##########
hudi-aws/src/main/java/org/apache/hudi/aws/credentials/HoodieAWSCredentialsProviderFactory.java:
##########
@@ -30,16 +30,23 @@
* Factory class for Hoodie AWSCredentialsProvider.
*/
public class HoodieAWSCredentialsProviderFactory {
- public static AWSCredentialsProvider getAwsCredentialsProvider(Properties
props) {
+ public static AwsCredentialsProvider getAwsCredentialsProvider(Properties
props) {
return getAwsCredentialsProviderChain(props);
}
- private static AWSCredentialsProvider
getAwsCredentialsProviderChain(Properties props) {
- List<AWSCredentialsProvider> providers = new ArrayList<>();
- providers.add(new HoodieConfigAWSCredentialsProvider(props));
- providers.add(new DefaultAWSCredentialsProviderChain());
- AWSCredentialsProviderChain providerChain = new
AWSCredentialsProviderChain(providers);
- providerChain.setReuseLastProvider(true);
+ private static AwsCredentialsProvider
getAwsCredentialsProviderChain(Properties props) {
+ List<AwsCredentialsProvider> providers = new ArrayList<>();
+ HoodieConfigAWSCredentialsProvider hoodieConfigAWSCredentialsProvider =
new HoodieConfigAWSCredentialsProvider(props);
+ if (hoodieConfigAWSCredentialsProvider.resolveCredentials() != null) {
+ providers.add(hoodieConfigAWSCredentialsProvider);
+ }
+ providers.add(DefaultCredentialsProvider.builder()
Review Comment:
When stepping thru the builder code of `DefaultCredentialsProvider` I
believe it provides a chain if this is what you were referring too.
```
private DefaultCredentialsProvider(Builder builder) {
this.profileFile = builder.profileFile;
this.profileName = builder.profileName;
this.reuseLastProviderEnabled = builder.reuseLastProviderEnabled;
this.asyncCredentialUpdateEnabled =
builder.asyncCredentialUpdateEnabled;
this.providerChain = createChain(builder);
}
```
From the change log doc
https://github.com/aws/aws-sdk-java-v2/blob/master/docs/LaunchChangelog.md#4-service-changes
I see that for `com.amazonaws.auth.DefaultAWSCredentialsProviderChain` the
corresponding
concept is
`software.amazon.awssdk.auth.credentials.DefaultCredentialsProvider`
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]