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]

Reply via email to