Skip to content

Commit 462b877

Browse files
remove Session() awsclient.ConfigProvider
1 parent 1b83b14 commit 462b877

File tree

11 files changed

+226
-107
lines changed

11 files changed

+226
-107
lines changed

pkg/cloud/interfaces.go

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,6 @@ import (
2121
"time"
2222

2323
awsv2 "github.com/aws/aws-sdk-go-v2/aws"
24-
awsclient "github.com/aws/aws-sdk-go/aws/client"
2524
"k8s.io/apimachinery/pkg/apis/meta/v1/unstructured"
2625
"sigs.k8s.io/controller-runtime/pkg/client"
2726

@@ -34,8 +33,7 @@ import (
3433

3534
// Session represents an AWS session.
3635
type Session interface {
37-
Session() awsclient.ConfigProvider
38-
SessionV2() awsv2.Config
36+
Session() awsv2.Config
3937
ServiceLimiter(service string) *throttle.ServiceLimiter
4038
}
4139

pkg/cloud/scope/clients.go

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,7 @@ import (
5050

5151
// NewASGClient creates a new ASG API client for a given session.
5252
func NewASGClient(scopeUser cloud.ScopeUsage, session cloud.Session, logger logger.Wrapper, target runtime.Object) *autoscaling.Client {
53-
cfg := session.SessionV2()
53+
cfg := session.Session()
5454

5555
autoscalingOpts := []func(*autoscaling.Options){
5656
func(o *autoscaling.Options) {
@@ -68,7 +68,7 @@ func NewASGClient(scopeUser cloud.ScopeUsage, session cloud.Session, logger logg
6868

6969
// NewEC2Client creates a new EC2 API client for a given session.
7070
func NewEC2Client(scopeUser cloud.ScopeUsage, session cloud.Session, logger logger.Wrapper, target runtime.Object) *ec2.Client {
71-
cfg := session.SessionV2()
71+
cfg := session.Session()
7272
multiSvcEndpointResolver := endpointsv2.NewMultiServiceEndpointResolver()
7373
ec2EndpointResolver := &endpointsv2.EC2EndpointResolver{
7474
MultiServiceEndpointResolver: multiSvcEndpointResolver,
@@ -92,7 +92,7 @@ func NewEC2Client(scopeUser cloud.ScopeUsage, session cloud.Session, logger logg
9292

9393
// NewELBClient creates a new ELB API client for a given session.
9494
func NewELBClient(scopeUser cloud.ScopeUsage, session cloud.Session, logger logger.Wrapper, target runtime.Object) *elb.Client {
95-
cfg := session.SessionV2()
95+
cfg := session.Session()
9696
multiSvcEndpointResolver := endpointsv2.NewMultiServiceEndpointResolver()
9797
endpointResolver := &endpointsv2.ELBEndpointResolver{
9898
MultiServiceEndpointResolver: multiSvcEndpointResolver,
@@ -116,7 +116,7 @@ func NewELBClient(scopeUser cloud.ScopeUsage, session cloud.Session, logger logg
116116

117117
// NewELBv2Client creates a new ELB v2 API client for a given session.
118118
func NewELBv2Client(scopeUser cloud.ScopeUsage, session cloud.Session, logger logger.Wrapper, target runtime.Object) *elbv2.Client {
119-
cfg := session.SessionV2()
119+
cfg := session.Session()
120120
multiSvcEndpointResolver := endpointsv2.NewMultiServiceEndpointResolver()
121121
endpointResolver := &endpointsv2.ELBV2EndpointResolver{
122122
MultiServiceEndpointResolver: multiSvcEndpointResolver,
@@ -140,7 +140,7 @@ func NewELBv2Client(scopeUser cloud.ScopeUsage, session cloud.Session, logger lo
140140

141141
// NewEventBridgeClient creates a new EventBridge API client for a given session.
142142
func NewEventBridgeClient(scopeUser cloud.ScopeUsage, session cloud.Session, target runtime.Object) *eventbridge.Client {
143-
cfg := session.SessionV2()
143+
cfg := session.Session()
144144
multiSvcEndpointResolver := endpointsv2.NewMultiServiceEndpointResolver()
145145
endpointResolver := &endpointsv2.EventBridgeEndpointResolver{
146146
MultiServiceEndpointResolver: multiSvcEndpointResolver,
@@ -161,7 +161,7 @@ func NewEventBridgeClient(scopeUser cloud.ScopeUsage, session cloud.Session, tar
161161

162162
// NewSQSClient creates a new SQS API client for a given session.
163163
func NewSQSClient(scopeUser cloud.ScopeUsage, session cloud.Session, target runtime.Object) *sqs.Client {
164-
cfg := session.SessionV2()
164+
cfg := session.Session()
165165
multiSvcEndpointResolver := endpointsv2.NewMultiServiceEndpointResolver()
166166
endpointResolver := &endpointsv2.SQSEndpointResolver{
167167
MultiServiceEndpointResolver: multiSvcEndpointResolver,
@@ -182,7 +182,7 @@ func NewSQSClient(scopeUser cloud.ScopeUsage, session cloud.Session, target runt
182182

183183
// NewGlobalSQSClient for creating a new SQS API client that isn't tied to a cluster.
184184
func NewGlobalSQSClient(scopeUser cloud.ScopeUsage, session cloud.Session) *sqs.Client {
185-
cfg := session.SessionV2()
185+
cfg := session.Session()
186186
multiSvcEndpointResolver := endpointsv2.NewMultiServiceEndpointResolver()
187187
endpointResolver := &endpointsv2.SQSEndpointResolver{
188188
MultiServiceEndpointResolver: multiSvcEndpointResolver,
@@ -203,7 +203,7 @@ func NewGlobalSQSClient(scopeUser cloud.ScopeUsage, session cloud.Session) *sqs.
203203

204204
// NewResourgeTaggingClient creates a new Resource Tagging API client for a given session.
205205
func NewResourgeTaggingClient(scopeUser cloud.ScopeUsage, session cloud.Session, logger logger.Wrapper, target runtime.Object) *rgapi.Client {
206-
cfg := session.SessionV2()
206+
cfg := session.Session()
207207
multiSvcEndpointResolver := endpointsv2.NewMultiServiceEndpointResolver()
208208
endpointResolver := &endpointsv2.RGAPIEndpointResolver{
209209
MultiServiceEndpointResolver: multiSvcEndpointResolver,
@@ -235,7 +235,7 @@ func NewSecretsManagerClient(scopeUser cloud.ScopeUsage, session cloud.Session,
235235

236236
// NewEKSClient creates a new EKS API client for a given session.
237237
func NewEKSClient(scopeUser cloud.ScopeUsage, session cloud.Session, logger logger.Wrapper, target runtime.Object) *eks.Client {
238-
cfg := session.SessionV2()
238+
cfg := session.Session()
239239
multiSvcEndpointResolver := endpointsv2.NewMultiServiceEndpointResolver()
240240
eksEndpointResolver := &endpointsv2.EKSEndpointResolver{
241241
MultiServiceEndpointResolver: multiSvcEndpointResolver,
@@ -253,7 +253,7 @@ func NewEKSClient(scopeUser cloud.ScopeUsage, session cloud.Session, logger logg
253253

254254
// NewIAMClient creates a new IAM API client for a given session.
255255
func NewIAMClient(scopeUser cloud.ScopeUsage, session cloud.Session, logger logger.Wrapper, target runtime.Object) *iam.Client {
256-
cfg := session.SessionV2()
256+
cfg := session.Session()
257257

258258
iamOpts := []func(*iam.Options){
259259
func(o *iam.Options) {
@@ -281,7 +281,7 @@ func NewSTSClient(scopeUser cloud.ScopeUsage, session cloud.Session, logger logg
281281

282282
// NewSSMClient creates a new Secrets API client for a given session.
283283
func NewSSMClient(scopeUser cloud.ScopeUsage, session cloud.Session, logger logger.Wrapper, target runtime.Object) *ssm.Client {
284-
cfg := session.SessionV2()
284+
cfg := session.Session()
285285
multiSvcEndpointResolver := endpointsv2.NewMultiServiceEndpointResolver()
286286
ssmEndpointResolver := &endpointsv2.SSMEndpointResolver{
287287
MultiServiceEndpointResolver: multiSvcEndpointResolver,
@@ -303,7 +303,7 @@ func NewSSMClient(scopeUser cloud.ScopeUsage, session cloud.Session, logger logg
303303

304304
// NewS3Client creates a new S3 API client for a given session.
305305
func NewS3Client(scopeUser cloud.ScopeUsage, session cloud.Session, logger logger.Wrapper, target runtime.Object) *s3.Client {
306-
cfg := session.SessionV2()
306+
cfg := session.Session()
307307
multiSvcEndpointResolver := endpointsv2.NewMultiServiceEndpointResolver()
308308
s3EndpointResolver := &endpointsv2.S3EndpointResolver{
309309
MultiServiceEndpointResolver: multiSvcEndpointResolver,

pkg/cloud/scope/cluster.go

Lines changed: 5 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -77,7 +77,7 @@ func NewClusterScope(params ClusterScopeParams) (*ClusterScope, error) {
7777
maxWaitActiveUpdateDelete: params.MaxWaitActiveUpdateDelete,
7878
}
7979

80-
session, serviceLimiters, err := sessionForClusterWithRegion(params.Client, clusterScope, params.AWSCluster.Spec.Region, params.Endpoints, params.Logger)
80+
_, serviceLimiters, err := sessionForClusterWithRegion(params.Client, clusterScope, params.AWSCluster.Spec.Region, params.Endpoints, params.Logger)
8181
if err != nil {
8282
return nil, errors.Errorf("failed to create aws session: %v", err)
8383
}
@@ -93,8 +93,7 @@ func NewClusterScope(params ClusterScopeParams) (*ClusterScope, error) {
9393
}
9494

9595
clusterScope.patchHelper = helper
96-
clusterScope.session = session
97-
clusterScope.sessionV2 = *sessionv2
96+
clusterScope.session = *sessionv2
9897
clusterScope.serviceLimiters = serviceLimiters
9998
clusterScope.serviceLimitersV2 = serviceLimitersv2
10099

@@ -110,8 +109,7 @@ type ClusterScope struct {
110109
Cluster *clusterv1.Cluster
111110
AWSCluster *infrav1.AWSCluster
112111

113-
session awsclient.ConfigProvider
114-
sessionV2 awsv2.Config
112+
session awsv2.Config
115113
serviceLimiters throttle.ServiceLimiters
116114
serviceLimitersV2 throttle.ServiceLimiters
117115
controllerName string
@@ -361,16 +359,11 @@ func (s *ClusterScope) ClusterObj() cloud.ClusterObject {
361359
return s.Cluster
362360
}
363361

364-
// Session returns the AWS SDK session. Used for creating clients.
365-
func (s *ClusterScope) Session() awsclient.ConfigProvider {
362+
// Session returns the AWS SDK V2 session. Used for creating clients.
363+
func (s *ClusterScope) Session() awsv2.Config {
366364
return s.session
367365
}
368366

369-
// SessionV2 returns the AWS SDK V2 session. Used for creating clients.
370-
func (s *ClusterScope) SessionV2() awsv2.Config {
371-
return s.sessionV2
372-
}
373-
374367
// ServiceLimiter returns the AWS SDK session. Used for creating clients.
375368
func (s *ClusterScope) ServiceLimiter(service string) *throttle.ServiceLimiter {
376369
if sl, ok := s.serviceLimiters[service]; ok {

pkg/cloud/scope/fargate.go

Lines changed: 5 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -70,7 +70,7 @@ func NewFargateProfileScope(params FargateProfileScopeParams) (*FargateProfileSc
7070
controllerName: params.ControllerName,
7171
}
7272

73-
session, serviceLimiters, err := sessionForClusterWithRegion(params.Client, managedScope, params.ControlPlane.Spec.Region, params.Endpoints, params.Logger)
73+
_, serviceLimiters, err := sessionForClusterWithRegion(params.Client, managedScope, params.ControlPlane.Spec.Region, params.Endpoints, params.Logger)
7474
if err != nil {
7575
return nil, errors.Errorf("failed to create aws session: %v", err)
7676
}
@@ -92,8 +92,7 @@ func NewFargateProfileScope(params FargateProfileScopeParams) (*FargateProfileSc
9292
ControlPlane: params.ControlPlane,
9393
FargateProfile: params.FargateProfile,
9494
patchHelper: helper,
95-
session: session,
96-
sessionV2: *sessionv2,
95+
session: *sessionv2,
9796
serviceLimiters: serviceLimiters,
9897
serviceLimitersV2: serviceLimitersv2,
9998
controllerName: params.ControllerName,
@@ -111,8 +110,7 @@ type FargateProfileScope struct {
111110
ControlPlane *ekscontrolplanev1.AWSManagedControlPlane
112111
FargateProfile *expinfrav1.AWSFargateProfile
113112

114-
session awsclient.ConfigProvider
115-
sessionV2 awsv2.Config
113+
session awsv2.Config
116114
serviceLimiters throttle.ServiceLimiters
117115
serviceLimitersV2 throttle.ServiceLimiters
118116
controllerName string
@@ -225,16 +223,11 @@ func (s *FargateProfileScope) ClusterObj() cloud.ClusterObject {
225223
return s.Cluster
226224
}
227225

228-
// Session returns the AWS SDK session. Used for creating clients.
229-
func (s *FargateProfileScope) Session() awsclient.ConfigProvider {
226+
// Session returns the AWS SDK V2 session. Used for creating clients.
227+
func (s *FargateProfileScope) Session() awsv2.Config {
230228
return s.session
231229
}
232230

233-
// SessionV2 returns the AWS SDK session. Used for creating clients.
234-
func (s *FargateProfileScope) SessionV2() awsv2.Config {
235-
return s.sessionV2
236-
}
237-
238231
// ControllerName returns the name of the controller that
239232
// created the FargateProfile.
240233
func (s *FargateProfileScope) ControllerName() string {

pkg/cloud/scope/global.go

Lines changed: 5 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,6 @@ package scope
1919

2020
import (
2121
awsv2 "github.com/aws/aws-sdk-go-v2/aws"
22-
awsclient "github.com/aws/aws-sdk-go/aws/client"
2322
"github.com/pkg/errors"
2423

2524
"sigs.k8s.io/cluster-api-provider-aws/v2/pkg/cloud/throttle"
@@ -33,7 +32,7 @@ func NewGlobalScope(params GlobalScopeParams) (*GlobalScope, error) {
3332
if params.ControllerName == "" {
3433
return nil, errors.New("controller name required to generate global scope")
3534
}
36-
ns, limiters, err := sessionForRegion(params.Region, params.Endpoints)
35+
_, limiters, err := sessionForRegion(params.Region, params.Endpoints)
3736
if err != nil {
3837
return nil, errors.Wrap(err, "failed to create aws session")
3938
}
@@ -43,8 +42,7 @@ func NewGlobalScope(params GlobalScopeParams) (*GlobalScope, error) {
4342
return nil, errors.Wrap(err, "failed to create aws V2 session")
4443
}
4544
return &GlobalScope{
46-
session: ns,
47-
sessionV2: *ns2,
45+
session: *ns2,
4846
serviceLimiters: limiters,
4947
controllerName: params.ControllerName,
5048
}, nil
@@ -59,22 +57,16 @@ type GlobalScopeParams struct {
5957

6058
// GlobalScope defines the specs for the GlobalScope.
6159
type GlobalScope struct {
62-
session awsclient.ConfigProvider
63-
sessionV2 awsv2.Config
60+
session awsv2.Config
6461
serviceLimiters throttle.ServiceLimiters
6562
controllerName string
6663
}
6764

68-
// Session returns the AWS SDK session. Used for creating clients.
69-
func (s *GlobalScope) Session() awsclient.ConfigProvider {
65+
// Session returns the AWS SDK V2 config. Used for creating clients.
66+
func (s *GlobalScope) Session() awsv2.Config {
7067
return s.session
7168
}
7269

73-
// SessionV2 returns the AWS SDK V2 config. Used for creating clients.
74-
func (s *GlobalScope) SessionV2() awsv2.Config {
75-
return s.sessionV2
76-
}
77-
7870
// ServiceLimiter returns the AWS SDK session. Used for creating clients.
7971
func (s *GlobalScope) ServiceLimiter(service string) *throttle.ServiceLimiter {
8072
if sl, ok := s.serviceLimiters[service]; ok {

pkg/cloud/scope/managedcontrolplane.go

Lines changed: 7 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -92,14 +92,13 @@ func NewManagedControlPlaneScope(params ManagedControlPlaneScopeParams) (*Manage
9292
ControlPlane: params.ControlPlane,
9393
MaxWaitActiveUpdateDelete: params.MaxWaitActiveUpdateDelete,
9494
patchHelper: nil,
95-
session: nil,
9695
serviceLimiters: nil,
9796
controllerName: params.ControllerName,
9897
allowAdditionalRoles: params.AllowAdditionalRoles,
9998
enableIAM: params.EnableIAM,
10099
tagUnmanagedNetworkResources: params.TagUnmanagedNetworkResources,
101100
}
102-
session, serviceLimiters, err := sessionForClusterWithRegion(params.Client, managedScope, params.ControlPlane.Spec.Region, params.Endpoints, params.Logger)
101+
_, serviceLimiters, err := sessionForClusterWithRegion(params.Client, managedScope, params.ControlPlane.Spec.Region, params.Endpoints, params.Logger)
103102
if err != nil {
104103
return nil, errors.Errorf("failed to create aws session: %v", err)
105104
}
@@ -109,8 +108,7 @@ func NewManagedControlPlaneScope(params ManagedControlPlaneScopeParams) (*Manage
109108
return nil, errors.Errorf("failed to create aws V2 session: %v", err)
110109
}
111110

112-
managedScope.session = session
113-
managedScope.sessionV2 = *sessionv2
111+
managedScope.session = *sessionv2
114112
managedScope.serviceLimiters = serviceLimiters
115113
managedScope.serviceLimitersV2 = serviceLimitersv2
116114

@@ -133,8 +131,7 @@ type ManagedControlPlaneScope struct {
133131
ControlPlane *ekscontrolplanev1.AWSManagedControlPlane
134132
MaxWaitActiveUpdateDelete time.Duration
135133

136-
session awsclient.ConfigProvider
137-
sessionV2 awsv2.Config
134+
session awsv2.Config
138135
serviceLimiters throttle.ServiceLimiters
139136
serviceLimitersV2 throttle.ServiceLimiters
140137
controllerName string
@@ -334,14 +331,14 @@ func (s *ManagedControlPlaneScope) ClusterObj() cloud.ClusterObject {
334331
return s.Cluster
335332
}
336333

337-
// Session returns the AWS SDK session. Used for creating clients.
338-
func (s *ManagedControlPlaneScope) Session() awsclient.ConfigProvider {
334+
// Session returns the AWS SDK V2 config. Used for creating clients.
335+
func (s *ManagedControlPlaneScope) Session() awsv2.Config {
339336
return s.session
340337
}
341338

342-
// SessionV2 returns the AWS SDK config. Used for creating clients.
339+
// SessionV2 returns the AWS SDK V2 config. Used for creating clients.
343340
func (s *ManagedControlPlaneScope) SessionV2() awsv2.Config {
344-
return s.sessionV2
341+
return s.session
345342
}
346343

347344
// Bastion returns the bastion details.

pkg/cloud/scope/rosacontrolplane.go

Lines changed: 5 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,6 @@ import (
2121
"fmt"
2222

2323
awsv2 "github.com/aws/aws-sdk-go-v2/aws"
24-
awsclient "github.com/aws/aws-sdk-go/aws/client"
2524
"github.com/aws/aws-sdk-go/service/sts"
2625
"github.com/aws/aws-sdk-go/service/sts/stsiface"
2726
"github.com/pkg/errors"
@@ -73,7 +72,7 @@ func NewROSAControlPlaneScope(params ROSAControlPlaneScopeParams) (*ROSAControlP
7372
controllerName: params.ControllerName,
7473
}
7574

76-
session, serviceLimiters, err := sessionForClusterWithRegion(params.Client, managedScope, params.ControlPlane.Spec.Region, params.Endpoints, params.Logger)
75+
_, serviceLimiters, err := sessionForClusterWithRegion(params.Client, managedScope, params.ControlPlane.Spec.Region, params.Endpoints, params.Logger)
7776
if err != nil {
7877
return nil, errors.Errorf("failed to create aws session: %v", err)
7978
}
@@ -89,8 +88,7 @@ func NewROSAControlPlaneScope(params ROSAControlPlaneScopeParams) (*ROSAControlP
8988
}
9089

9190
managedScope.patchHelper = helper
92-
managedScope.session = session
93-
managedScope.sessionV2 = *sessionv2
91+
managedScope.session = *sessionv2
9492
managedScope.serviceLimiters = serviceLimiters
9593
managedScope.serviceLimitersV2 = serviceLimitersv2
9694

@@ -113,8 +111,7 @@ type ROSAControlPlaneScope struct {
113111
Cluster *clusterv1.Cluster
114112
ControlPlane *rosacontrolplanev1.ROSAControlPlane
115113

116-
session awsclient.ConfigProvider
117-
sessionV2 awsv2.Config
114+
session awsv2.Config
118115
serviceLimiters throttle.ServiceLimiters
119116
serviceLimitersV2 throttle.ServiceLimiters
120117
controllerName string
@@ -131,16 +128,11 @@ func (s *ROSAControlPlaneScope) IdentityRef() *infrav1.AWSIdentityReference {
131128
return s.ControlPlane.Spec.IdentityRef
132129
}
133130

134-
// Session returns the AWS SDK session. Used for creating clients.
135-
func (s *ROSAControlPlaneScope) Session() awsclient.ConfigProvider {
131+
// Session returns the AWS SDK V2 session. Used for creating clients.
132+
func (s *ROSAControlPlaneScope) Session() awsv2.Config {
136133
return s.session
137134
}
138135

139-
// SessionV2 returns the AWS SDK V2 Config. Used for creating clients.
140-
func (s *ROSAControlPlaneScope) SessionV2() awsv2.Config {
141-
return s.sessionV2
142-
}
143-
144136
// ServiceLimiter returns the AWS SDK session. Used for creating clients.
145137
func (s *ROSAControlPlaneScope) ServiceLimiter(service string) *throttle.ServiceLimiter {
146138
if sl, ok := s.serviceLimiters[service]; ok {

0 commit comments

Comments
 (0)