@@ -120,7 +120,7 @@ func sessionForClusterWithRegion(k8sClient client.Client, clusterScoper cloud.Se
120120 return endpoints .DefaultResolver ().EndpointFor (service , region , optFns ... )
121121 }
122122
123- providers , err := getProvidersForCluster (context .Background (), k8sClient , clusterScoper , log )
123+ providers , err := getProvidersForCluster (context .Background (), k8sClient , clusterScoper , region , log )
124124 if err != nil {
125125 // could not get providers and retrieve the credentials
126126 conditions .MarkFalse (clusterScoper .InfraCluster (), infrav1 .PrincipalCredentialRetrievedCondition , infrav1 .PrincipalCredentialRetrievalFailedReason , clusterv1 .ConditionSeverityError , err .Error ())
@@ -256,6 +256,7 @@ func buildProvidersForRef(
256256 k8sClient client.Client ,
257257 clusterScoper cloud.SessionMetadata ,
258258 ref * infrav1.AWSIdentityReference ,
259+ region string ,
259260 log logger.Wrapper ) ([]identity.AWSPrincipalTypeProvider , error ) {
260261 if ref == nil {
261262 log .Trace ("AWSCluster does not have a IdentityRef specified" )
@@ -299,7 +300,7 @@ func buildProvidersForRef(
299300 setPrincipalUsageAllowedCondition (clusterScoper )
300301
301302 if roleIdentity .Spec .SourceIdentityRef != nil {
302- providers , err = buildProvidersForRef (ctx , providers , k8sClient , clusterScoper , roleIdentity .Spec .SourceIdentityRef , log )
303+ providers , err = buildProvidersForRef (ctx , providers , k8sClient , clusterScoper , roleIdentity .Spec .SourceIdentityRef , region , log )
303304 if err != nil {
304305 return providers , err
305306 }
@@ -313,7 +314,7 @@ func buildProvidersForRef(
313314 }
314315 }
315316
316- provider = identity .NewAWSRolePrincipalTypeProvider (roleIdentity , sourceProvider , log )
317+ provider = identity .NewAWSRolePrincipalTypeProvider (roleIdentity , sourceProvider , region , log )
317318 providers = append (providers , provider )
318319 default :
319320 return providers , errors .Errorf ("No such provider known: '%s'" , ref .Kind )
@@ -404,9 +405,9 @@ func buildAWSClusterControllerIdentity(ctx context.Context, identityObjectKey cl
404405 return nil
405406}
406407
407- func getProvidersForCluster (ctx context.Context , k8sClient client.Client , clusterScoper cloud.SessionMetadata , log logger.Wrapper ) ([]identity.AWSPrincipalTypeProvider , error ) {
408+ func getProvidersForCluster (ctx context.Context , k8sClient client.Client , clusterScoper cloud.SessionMetadata , region string , log logger.Wrapper ) ([]identity.AWSPrincipalTypeProvider , error ) {
408409 providers := make ([]identity.AWSPrincipalTypeProvider , 0 )
409- providers , err := buildProvidersForRef (ctx , providers , k8sClient , clusterScoper , clusterScoper .IdentityRef (), log )
410+ providers , err := buildProvidersForRef (ctx , providers , k8sClient , clusterScoper , clusterScoper .IdentityRef (), region , log )
410411 if err != nil {
411412 return nil , err
412413 }
0 commit comments