Skip to content

Commit 307a967

Browse files
committed
Update AWS SDK Go V2 Dependencies.
1 parent 310c784 commit 307a967

31 files changed

+1660
-1095
lines changed

.github/workflows/deps.yml

+1
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ on:
44
branches:
55
- "master"
66
- "release*"
7+
- "sdkv2"
78
permissions:
89
contents: read
910
jobs:

.github/workflows/integration-tests.yaml

+1
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ on:
55
branches:
66
- "master"
77
- "release*"
8+
- "sdk*"
89

910
permissions:
1011
id-token: write

.github/workflows/pr-automated-tests.yaml

+1
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ on:
44
branches:
55
- "master"
66
- "release*"
7+
- "sdkv2*"
78
permissions:
89
contents: read
910
jobs:

cmd/cni-metrics-helper/metrics/metrics.go

+10-10
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,8 @@ import (
1919
"context"
2020
"fmt"
2121

22-
"github.com/aws/aws-sdk-go/aws"
23-
"github.com/aws/aws-sdk-go/service/cloudwatch"
22+
"github.com/aws/aws-sdk-go-v2/aws"
23+
cloudwatchtypes "github.com/aws/aws-sdk-go-v2/service/cloudwatch/types"
2424
dto "github.com/prometheus/client_model/go"
2525
"github.com/prometheus/common/expfmt"
2626
"k8s.io/client-go/kubernetes"
@@ -288,9 +288,9 @@ func produceHistogram(act metricsAction, cw publisher.Publisher) {
288288

289289
prevUpperBound = *bucket.UpperBound
290290
if *bucket.CumulativeCount != 0 {
291-
dataPoint := &cloudwatch.MetricDatum{
291+
dataPoint := cloudwatchtypes.MetricDatum{
292292
MetricName: aws.String(act.cwMetricName),
293-
StatisticValues: &cloudwatch.StatisticSet{
293+
StatisticValues: &cloudwatchtypes.StatisticSet{
294294
Maximum: aws.Float64(mid),
295295
Minimum: aws.Float64(mid),
296296
SampleCount: aws.Float64(*bucket.CumulativeCount),
@@ -322,23 +322,23 @@ func produceCloudWatchMetrics(t metricsTarget, families map[string]*dto.MetricFa
322322
for _, action := range convertMetrics.actions {
323323
switch metricType {
324324
case dto.MetricType_COUNTER:
325-
dataPoint := &cloudwatch.MetricDatum{
325+
dataPoint := cloudwatchtypes.MetricDatum{
326326
MetricName: aws.String(action.cwMetricName),
327-
Unit: aws.String(cloudwatch.StandardUnitCount),
327+
Unit: cloudwatchtypes.StandardUnitCount,
328328
Value: aws.Float64(action.data.curSingleDataPoint),
329329
}
330330
cw.Publish(dataPoint)
331331
case dto.MetricType_GAUGE:
332-
dataPoint := &cloudwatch.MetricDatum{
332+
dataPoint := cloudwatchtypes.MetricDatum{
333333
MetricName: aws.String(action.cwMetricName),
334-
Unit: aws.String(cloudwatch.StandardUnitCount),
334+
Unit: cloudwatchtypes.StandardUnitCount,
335335
Value: aws.Float64(action.data.curSingleDataPoint),
336336
}
337337
cw.Publish(dataPoint)
338338
case dto.MetricType_SUMMARY:
339-
dataPoint := &cloudwatch.MetricDatum{
339+
dataPoint := cloudwatchtypes.MetricDatum{
340340
MetricName: aws.String(action.cwMetricName),
341-
Unit: aws.String(cloudwatch.StandardUnitCount),
341+
Unit: cloudwatchtypes.StandardUnitCount,
342342
Value: aws.Float64(action.data.curSingleDataPoint),
343343
}
344344
cw.Publish(dataPoint)

cmd/routed-eni-cni-plugin/cni_test.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ import (
2121

2222
"github.com/aws/amazon-vpc-cni-k8s/pkg/sgpp"
2323
"github.com/aws/amazon-vpc-cni-k8s/pkg/utils/logger"
24-
"github.com/aws/aws-sdk-go/aws"
24+
"github.com/aws/aws-sdk-go-v2/aws"
2525
current "github.com/containernetworking/cni/pkg/types/100"
2626

2727
"github.com/containernetworking/cni/pkg/skel"

go.mod

+17
Original file line numberDiff line numberDiff line change
@@ -50,6 +50,21 @@ require (
5050
github.com/Masterminds/squirrel v1.5.4 // indirect
5151
github.com/Microsoft/hcsshim v0.12.3 // indirect
5252
github.com/asaskevich/govalidator v0.0.0-20200428143746-21a406dcc535 // indirect
53+
github.com/aws/aws-sdk-go-v2 v1.32.4 // indirect
54+
github.com/aws/aws-sdk-go-v2/config v1.28.4 // indirect
55+
github.com/aws/aws-sdk-go-v2/credentials v1.17.45 // indirect
56+
github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.16.19 // indirect
57+
github.com/aws/aws-sdk-go-v2/internal/configsources v1.3.23 // indirect
58+
github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.6.23 // indirect
59+
github.com/aws/aws-sdk-go-v2/internal/ini v1.8.1 // indirect
60+
github.com/aws/aws-sdk-go-v2/service/cloudwatch v1.43.0 // indirect
61+
github.com/aws/aws-sdk-go-v2/service/ec2 v1.189.0 // indirect
62+
github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.12.0 // indirect
63+
github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.12.4 // indirect
64+
github.com/aws/aws-sdk-go-v2/service/sso v1.24.5 // indirect
65+
github.com/aws/aws-sdk-go-v2/service/ssooidc v1.28.4 // indirect
66+
github.com/aws/aws-sdk-go-v2/service/sts v1.33.0 // indirect
67+
github.com/aws/smithy-go v1.22.1 // indirect
5368
github.com/beorn7/perks v1.0.1 // indirect
5469
github.com/blang/semver/v4 v4.0.0 // indirect
5570
github.com/cespare/xxhash/v2 v2.3.0 // indirect
@@ -142,6 +157,7 @@ require (
142157
github.com/xeipuuv/gojsonreference v0.0.0-20180127040603-bd5ef7bd5415 // indirect
143158
github.com/xeipuuv/gojsonschema v1.2.0 // indirect
144159
github.com/xlab/treeprint v1.2.0 // indirect
160+
github.com/yuin/goldmark v1.4.13 // indirect
145161
go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.53.0 // indirect
146162
go.opentelemetry.io/otel v1.28.0 // indirect
147163
go.opentelemetry.io/otel/metric v1.28.0 // indirect
@@ -150,6 +166,7 @@ require (
150166
go.uber.org/multierr v1.11.0 // indirect
151167
golang.org/x/crypto v0.24.0 // indirect
152168
golang.org/x/exp v0.0.0-20240719175910-8a7402abbf56 // indirect
169+
golang.org/x/mod v0.20.0 // indirect
153170
golang.org/x/oauth2 v0.23.0 // indirect
154171
golang.org/x/sync v0.8.0 // indirect
155172
golang.org/x/term v0.21.0 // indirect

go.sum

+35
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,38 @@ github.com/aws/amazon-vpc-resource-controller-k8s v1.5.0 h1:utc5JzVlbORZ/4IFHb4y
3939
github.com/aws/amazon-vpc-resource-controller-k8s v1.5.0/go.mod h1:3q5gDG44vGr9ERe0YMHItThKXxDkntAUrlfTgJkdgF8=
4040
github.com/aws/aws-sdk-go v1.55.5 h1:KKUZBfBoyqy5d3swXyiC7Q76ic40rYcbqH7qjh59kzU=
4141
github.com/aws/aws-sdk-go v1.55.5/go.mod h1:eRwEWoyTWFMVYVQzKMNHWP5/RV4xIUGMQfXQHfHkpNU=
42+
github.com/aws/aws-sdk-go-v2 v1.32.4 h1:S13INUiTxgrPueTmrm5DZ+MiAo99zYzHEFh1UNkOxNE=
43+
github.com/aws/aws-sdk-go-v2 v1.32.4/go.mod h1:2SK5n0a2karNTv5tbP1SjsX0uhttou00v/HpXKM1ZUo=
44+
github.com/aws/aws-sdk-go-v2/config v1.28.4 h1:qgD0MKmkIzZR2DrAjWJcI9UkndjR+8f6sjUQvXh0mb0=
45+
github.com/aws/aws-sdk-go-v2/config v1.28.4/go.mod h1:LgnWnNzHZw4MLplSyEGia0WgJ/kCGD86zGCjvNpehJs=
46+
github.com/aws/aws-sdk-go-v2/credentials v1.17.45 h1:DUgm5lFso57E7150RBgu1JpVQoF8fAPretiDStIuVjg=
47+
github.com/aws/aws-sdk-go-v2/credentials v1.17.45/go.mod h1:dnBpENcPC1ekZrGpSWspX+ZRGzhkvqngT2Qp5xBR1dY=
48+
github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.16.19 h1:woXadbf0c7enQ2UGCi8gW/WuKmE0xIzxBF/eD94jMKQ=
49+
github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.16.19/go.mod h1:zminj5ucw7w0r65bP6nhyOd3xL6veAUMc3ElGMoLVb4=
50+
github.com/aws/aws-sdk-go-v2/internal/configsources v1.3.23 h1:A2w6m6Tmr+BNXjDsr7M90zkWjsu4JXHwrzPg235STs4=
51+
github.com/aws/aws-sdk-go-v2/internal/configsources v1.3.23/go.mod h1:35EVp9wyeANdujZruvHiQUAo9E3vbhnIO1mTCAxMlY0=
52+
github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.6.23 h1:pgYW9FCabt2M25MoHYCfMrVY2ghiiBKYWUVXfwZs+sU=
53+
github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.6.23/go.mod h1:c48kLgzO19wAu3CPkDWC28JbaJ+hfQlsdl7I2+oqIbk=
54+
github.com/aws/aws-sdk-go-v2/internal/ini v1.8.1 h1:VaRN3TlFdd6KxX1x3ILT5ynH6HvKgqdiXoTxAF4HQcQ=
55+
github.com/aws/aws-sdk-go-v2/internal/ini v1.8.1/go.mod h1:FbtygfRFze9usAadmnGJNc8KsP346kEe+y2/oyhGAGc=
56+
github.com/aws/aws-sdk-go-v2/service/cloudwatch v1.43.0 h1:r1sp92LSk4Gx8l0gScEjzSN+4iiImDvNayY9JYPNtNI=
57+
github.com/aws/aws-sdk-go-v2/service/cloudwatch v1.43.0/go.mod h1:fkETEwhdw2tOqu5m0Xa3wimV3PLDaiGqNrVZ3MJ7zOc=
58+
github.com/aws/aws-sdk-go-v2/service/ec2 v1.189.0 h1:eBriSsQa4r7aiKF2wv1EGYbK3X1VnjAYvdOlepBUi8s=
59+
github.com/aws/aws-sdk-go-v2/service/ec2 v1.189.0/go.mod h1:0A17IIeys01WfjDKehspGP+Cyo/YH/eNADIbEbRS9yM=
60+
github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.12.0 h1:TToQNkvGguu209puTojY/ozlqy2d/SFNcoLIqTFi42g=
61+
github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.12.0/go.mod h1:0jp+ltwkf+SwG2fm/PKo8t4y8pJSgOCO4D8Lz3k0aHQ=
62+
github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.12.4 h1:tHxQi/XHPK0ctd/wdOw0t7Xrc2OxcRCnVzv8lwWPu0c=
63+
github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.12.4/go.mod h1:4GQbF1vJzG60poZqWatZlhP31y8PGCCVTvIGPdaaYJ0=
64+
github.com/aws/aws-sdk-go-v2/service/sso v1.24.5 h1:HJwZwRt2Z2Tdec+m+fPjvdmkq2s9Ra+VR0hjF7V2o40=
65+
github.com/aws/aws-sdk-go-v2/service/sso v1.24.5/go.mod h1:wrMCEwjFPms+V86TCQQeOxQF/If4vT44FGIOFiMC2ck=
66+
github.com/aws/aws-sdk-go-v2/service/ssooidc v1.28.4 h1:zcx9LiGWZ6i6pjdcoE9oXAB6mUdeyC36Ia/QEiIvYdg=
67+
github.com/aws/aws-sdk-go-v2/service/ssooidc v1.28.4/go.mod h1:Tp/ly1cTjRLGBBmNccFumbZ8oqpZlpdhFf80SrRh4is=
68+
github.com/aws/aws-sdk-go-v2/service/sts v1.33.0 h1:s7LRgBqhwLaxcocnAniBJp7gaAB+4I4vHzqUqjH18yc=
69+
github.com/aws/aws-sdk-go-v2/service/sts v1.33.0/go.mod h1:9XEUty5v5UAsMiFOBJrNibZgwCeOma73jgGwwhgffa8=
70+
github.com/aws/smithy-go v1.22.0 h1:uunKnWlcoL3zO7q+gG2Pk53joueEOsnNB28QdMsmiMM=
71+
github.com/aws/smithy-go v1.22.0/go.mod h1:irrKGvNn1InZwb2d7fkIRNucdfwR8R+Ts3wxYa/cJHg=
72+
github.com/aws/smithy-go v1.22.1 h1:/HPHZQ0g7f4eUeK6HKglFz8uwVfZKgoI25rb/J+dnro=
73+
github.com/aws/smithy-go v1.22.1/go.mod h1:irrKGvNn1InZwb2d7fkIRNucdfwR8R+Ts3wxYa/cJHg=
4274
github.com/beorn7/perks v0.0.0-20180321164747-3a771d992973/go.mod h1:Dwedo/Wpr24TaqPxmxbtue+5NUziq4I4S80YR8gNf3Q=
4375
github.com/beorn7/perks v1.0.0/go.mod h1:KWe93zE9D1o94FZ5RNwFwVgaQK1VOXiVxmqh+CedLV8=
4476
github.com/beorn7/perks v1.0.1 h1:VlbKKnNfV8bJzeqoa4cOKqO6bYr3WgKZxO8Z16+hsOM=
@@ -425,6 +457,7 @@ github.com/xlab/treeprint v1.2.0/go.mod h1:gj5Gd3gPdKtR1ikdDK6fnFLdmIS0X30kTTuNd
425457
github.com/yuin/goldmark v1.1.27/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74=
426458
github.com/yuin/goldmark v1.2.1/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74=
427459
github.com/yuin/goldmark v1.3.5/go.mod h1:mwnBkeHKe2W/ZEtQ+71ViKU8L12m81fl3OWwC1Zlc8k=
460+
github.com/yuin/goldmark v1.4.13 h1:fVcFKWvrslecOb/tg+Cc05dkeYx540o0FuFt3nUVDoE=
428461
github.com/yuin/goldmark v1.4.13/go.mod h1:6yULJ656Px+3vBD8DxQVa3kxgyrAnzto9xy5taEt/CY=
429462
github.com/yvasiyarov/go-metrics v0.0.0-20140926110328-57bccd1ccd43 h1:+lm10QQTNSBd8DVTNGHx7o/IKu9HYDvLMffDhbyLccI=
430463
github.com/yvasiyarov/go-metrics v0.0.0-20140926110328-57bccd1ccd43/go.mod h1:aX5oPXxHm3bOH+xeAttToC8pqch2ScQN/JoXYupl6xs=
@@ -463,6 +496,8 @@ golang.org/x/mod v0.3.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA=
463496
golang.org/x/mod v0.4.2/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA=
464497
golang.org/x/mod v0.6.0-dev.0.20220419223038-86c51ed26bb4/go.mod h1:jJ57K6gSWd91VN4djpZkiMVwK6gcyfeH4XE8wZrZaV4=
465498
golang.org/x/mod v0.8.0/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs=
499+
golang.org/x/mod v0.20.0 h1:utOm6MM3R3dnawAiJgn0y+xvuYRsm1RKM/4giyfDgV0=
500+
golang.org/x/mod v0.20.0/go.mod h1:hTbmBsO62+eylJbnUtE2MGJUyE7QWk4xUqPFrRgJ+7c=
466501
golang.org/x/net v0.23.0 h1:7EYJ93RZ9vYSZAIb2x3lnuvqO5zneoD6IvWjuhfxjTs=
467502
golang.org/x/net v0.23.0/go.mod h1:JKghWKKOSdJwpW2GEx0Ja7fmaKnMsbu+MWVZTokSYmg=
468503
golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U=

pkg/awsutils/awssession/session.go

+78-31
Original file line numberDiff line numberDiff line change
@@ -14,20 +14,24 @@
1414
package awssession
1515

1616
import (
17+
"context"
1718
"fmt"
1819
"net/http"
1920
"os"
2021

22+
"github.com/aws/aws-sdk-go-v2/aws"
23+
"github.com/aws/aws-sdk-go-v2/aws/retry"
24+
"github.com/aws/aws-sdk-go-v2/config"
25+
"github.com/aws/aws-sdk-go-v2/service/ec2"
26+
"github.com/aws/smithy-go"
27+
smithymiddleware "github.com/aws/smithy-go/middleware"
28+
smithyhttp "github.com/aws/smithy-go/transport/http"
29+
2130
"strconv"
2231
"time"
2332

2433
"github.com/aws/amazon-vpc-cni-k8s/pkg/utils/logger"
2534
"github.com/aws/amazon-vpc-cni-k8s/utils"
26-
"github.com/aws/aws-sdk-go/aws"
27-
"github.com/aws/aws-sdk-go/aws/endpoints"
28-
"github.com/aws/aws-sdk-go/aws/request"
29-
"github.com/aws/aws-sdk-go/aws/session"
30-
"github.com/aws/aws-sdk-go/service/ec2"
3135
)
3236

3337
// Http client timeout env for sessions
@@ -59,42 +63,85 @@ func getHTTPTimeout() time.Duration {
5963
}
6064

6165
// New will return an session for service clients
62-
func New() *session.Session {
63-
awsCfg := aws.Config{
64-
MaxRetries: aws.Int(maxRetries),
65-
HTTPClient: &http.Client{
66-
Timeout: getHTTPTimeout(),
67-
},
68-
STSRegionalEndpoint: endpoints.RegionalSTSEndpoint,
66+
func New(ctx context.Context) (aws.Config, error) {
67+
customHTTPClient := &http.Client{
68+
Timeout: getHTTPTimeout()}
69+
optFns := []func(*config.LoadOptions) error{
70+
config.WithHTTPClient(customHTTPClient),
71+
config.WithRetryMaxAttempts(maxRetries),
72+
config.WithRetryer(func() aws.Retryer {
73+
return retry.NewStandard()
74+
}),
75+
injectUserAgent,
6976
}
7077

7178
endpoint := os.Getenv("AWS_EC2_ENDPOINT")
79+
80+
//TODO (senthilx) - The endpoint resolver is using deprecated method, this should be moved to the services.
7281
if endpoint != "" {
73-
customResolver := func(service, region string, optFns ...func(*endpoints.Options)) (endpoints.ResolvedEndpoint, error) {
74-
if service == ec2.EndpointsID {
75-
return endpoints.ResolvedEndpoint{
76-
URL: endpoint,
77-
}, nil
78-
}
79-
return endpoints.DefaultResolver().EndpointFor(service, region, optFns...)
80-
}
81-
awsCfg.EndpointResolver = endpoints.ResolverFunc(customResolver)
82+
optFns = append(optFns, config.WithEndpointResolver(aws.EndpointResolverFunc(
83+
func(service, region string) (aws.Endpoint, error) {
84+
if service == ec2.ServiceID {
85+
return aws.Endpoint{
86+
URL: endpoint,
87+
}, nil
88+
}
89+
// Fall back to default resolution
90+
return aws.Endpoint{}, &aws.EndpointNotFoundError{}
91+
})))
92+
8293
}
8394

84-
sess := session.Must(session.NewSession(&awsCfg))
85-
//injecting session handler info
86-
injectUserAgent(&sess.Handlers)
95+
cfg, err := config.LoadDefaultConfig(ctx, optFns...)
96+
97+
if err != nil {
98+
return aws.Config{}, fmt.Errorf("failed to load AWS config: %w", err)
99+
}
87100

88-
return sess
101+
return cfg, nil
89102
}
90103

91104
// injectUserAgent will inject app specific user-agent into awsSDK
92-
func injectUserAgent(handlers *request.Handlers) {
105+
func injectUserAgent(loadOptions *config.LoadOptions) error {
93106
version := utils.GetEnv(envVpcCniVersion, "")
94-
handlers.Build.PushFrontNamed(request.NamedHandler{
95-
Name: fmt.Sprintf("%s/user-agent", "amazon-vpc-cni-k8s"),
96-
Fn: request.MakeAddToUserAgentHandler(
97-
"amazon-vpc-cni-k8s",
98-
"version/"+version),
107+
userAgent := fmt.Sprintf("amazon-vpc-cni-k8s/version/%s", version)
108+
109+
loadOptions.APIOptions = append(loadOptions.APIOptions, func(stack *smithymiddleware.Stack) error {
110+
return stack.Build.Add(&addUserAgentMiddleware{
111+
userAgent: userAgent,
112+
}, smithymiddleware.After)
99113
})
114+
115+
return nil
116+
}
117+
118+
type addUserAgentMiddleware struct {
119+
userAgent string
120+
}
121+
122+
func (m *addUserAgentMiddleware) HandleBuild(ctx context.Context, in smithymiddleware.BuildInput, next smithymiddleware.BuildHandler) (out smithymiddleware.BuildOutput, metadata smithymiddleware.Metadata, err error) {
123+
// Simply pass through to the next handler in the middleware chain
124+
return next.HandleBuild(ctx, in)
125+
}
126+
127+
func (m *addUserAgentMiddleware) ID() string {
128+
return "AddUserAgent"
129+
}
130+
131+
func (m *addUserAgentMiddleware) HandleFinalize(ctx context.Context, in smithymiddleware.FinalizeInput, next smithymiddleware.FinalizeHandler) (
132+
out smithymiddleware.FinalizeOutput, metadata smithymiddleware.Metadata, err error) {
133+
req, ok := in.Request.(*smithyhttp.Request)
134+
if !ok {
135+
return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown request type %T", in.Request)}
136+
}
137+
138+
userAgent := req.Header.Get("User-Agent")
139+
if userAgent == "" {
140+
userAgent = m.userAgent
141+
} else {
142+
userAgent += " " + m.userAgent
143+
}
144+
req.Header.Set("User-Agent", userAgent)
145+
146+
return next.HandleFinalize(ctx, in)
100147
}

pkg/awsutils/awssession/session_test.go

+6-3
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,12 @@
11
package awssession
22

33
import (
4+
"context"
45
"os"
56
"testing"
67
"time"
78

8-
"github.com/aws/aws-sdk-go/service/ec2"
9+
"github.com/aws/aws-sdk-go-v2/service/ec2"
910
"github.com/stretchr/testify/assert"
1011
)
1112

@@ -25,13 +26,15 @@ func TestHttpTimeoutWithValueAbove10(t *testing.T) {
2526

2627
func TestAwsEc2EndpointResolver(t *testing.T) {
2728
customEndpoint := "https://ec2.us-west-2.customaws.com"
29+
ctx := context.Background()
2830

2931
os.Setenv("AWS_EC2_ENDPOINT", customEndpoint)
3032
defer os.Unsetenv("AWS_EC2_ENDPOINT")
3133

32-
sess := New()
34+
cfg, err := New(ctx)
35+
assert.NoError(t, err)
3336

34-
resolvedEndpoint, err := sess.Config.EndpointResolver.EndpointFor(ec2.EndpointsID, "")
37+
resolvedEndpoint, err := cfg.EndpointResolver.ResolveEndpoint(ec2.ServiceID, "")
3538
assert.NoError(t, err)
3639
assert.Equal(t, customEndpoint, resolvedEndpoint.URL)
3740
}

0 commit comments

Comments
 (0)