Skip to content

Commit 7fbfdce

Browse files
authored
chore(deps): migrate to go aws sdk v2 (#2625)
1 parent 6fcde99 commit 7fbfdce

File tree

3 files changed

+23
-18
lines changed

3 files changed

+23
-18
lines changed

cmd/installer/cli/restore.go

Lines changed: 20 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -13,10 +13,10 @@ import (
1313
"strings"
1414
"time"
1515

16-
"github.com/aws/aws-sdk-go/aws"
17-
"github.com/aws/aws-sdk-go/aws/credentials"
18-
"github.com/aws/aws-sdk-go/aws/session"
19-
"github.com/aws/aws-sdk-go/service/s3"
16+
"github.com/aws/aws-sdk-go-v2/aws"
17+
"github.com/aws/aws-sdk-go-v2/config"
18+
"github.com/aws/aws-sdk-go-v2/credentials"
19+
"github.com/aws/aws-sdk-go-v2/service/s3"
2020
k0sv1beta1 "github.com/k0sproject/k0s/pkg/apis/k0s/v1beta1"
2121
apitypes "github.com/replicatedhq/embedded-cluster/api/types"
2222
"github.com/replicatedhq/embedded-cluster/cmd/installer/kotscli"
@@ -364,7 +364,7 @@ func runRestoreStepNew(ctx context.Context, appSlug, appTitle string, flags Inst
364364

365365
if !skipStoreValidation {
366366
logrus.Debugf("validating backup store configuration")
367-
if err := validateS3BackupStore(s3Store); err != nil {
367+
if err := validateS3BackupStore(ctx, s3Store); err != nil {
368368
return fmt.Errorf("unable to validate backup store: %w", err)
369369
}
370370
}
@@ -988,30 +988,35 @@ func promptForS3BackupStore(store *s3BackupStore) error {
988988

989989
// validateS3BackupStore validates the S3 backup store configuration.
990990
// It tries to list objects in the bucket and prefix to ensure that the bucket exists and has backups.
991-
func validateS3BackupStore(s *s3BackupStore) error {
991+
func validateS3BackupStore(ctx context.Context, s *s3BackupStore) error {
992992
u, err := url.Parse(s.endpoint)
993993
if err != nil {
994994
return fmt.Errorf("parse endpoint: %v", err)
995995
}
996996

997997
isAWS := strings.HasSuffix(u.Hostname(), ".amazonaws.com")
998-
sess, err := session.NewSession(&aws.Config{
999-
Region: aws.String(s.region),
1000-
Endpoint: aws.String(s.endpoint),
1001-
Credentials: credentials.NewStaticCredentials(s.accessKeyID, s.secretAccessKey, ""),
1002-
S3ForcePathStyle: aws.Bool(!isAWS),
1003-
})
998+
creds := credentials.NewStaticCredentialsProvider(s.accessKeyID, s.secretAccessKey, "")
999+
1000+
cfg, err := config.LoadDefaultConfig(ctx,
1001+
config.WithRegion(s.region),
1002+
config.WithCredentialsProvider(creds),
1003+
)
10041004
if err != nil {
1005-
return fmt.Errorf("create s3 session: %v", err)
1005+
return fmt.Errorf("load aws config: %v", err)
10061006
}
10071007

1008+
svc := s3.NewFromConfig(cfg, func(o *s3.Options) {
1009+
o.BaseEndpoint = aws.String(s.endpoint)
1010+
o.UsePathStyle = !isAWS
1011+
})
1012+
10081013
input := &s3.ListObjectsV2Input{
10091014
Bucket: aws.String(s.bucket),
10101015
Delimiter: aws.String("/"),
10111016
Prefix: aws.String(fmt.Sprintf("%s/", filepath.Join(s.prefix, "backups"))),
10121017
}
1013-
svc := s3.New(sess)
1014-
result, err := svc.ListObjectsV2(input)
1018+
1019+
result, err := svc.ListObjectsV2(ctx, input)
10151020
if err != nil {
10161021
return fmt.Errorf("list objects: %v", err)
10171022
}

go.mod

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,6 @@ require (
66
github.com/AlecAivazis/survey/v2 v2.3.7
77
github.com/Masterminds/sprig/v3 v3.3.0
88
github.com/apparentlymart/go-cidr v1.1.0
9-
github.com/aws/aws-sdk-go v1.55.7
109
github.com/aws/aws-sdk-go-v2 v1.37.1
1110
github.com/aws/aws-sdk-go-v2/config v1.30.2
1211
github.com/aws/aws-sdk-go-v2/credentials v1.18.2
@@ -95,6 +94,7 @@ require (
9594
github.com/VividCortex/ewma v1.2.0 // indirect
9695
github.com/acarl005/stripansi v0.0.0-20180116102854-5a71ef0e047d // indirect
9796
github.com/ahmetalpbalkan/go-cursor v0.0.0-20131010032410-8136607ea412 // indirect
97+
github.com/aws/aws-sdk-go v1.55.5 // indirect
9898
github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream v1.7.0 // indirect
9999
github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.18.1 // indirect
100100
github.com/aws/aws-sdk-go-v2/internal/configsources v1.4.1 // indirect

go.sum

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -699,8 +699,8 @@ github.com/armon/go-socks5 v0.0.0-20160902184237-e75332964ef5/go.mod h1:wHh0iHkY
699699
github.com/asaskevich/govalidator v0.0.0-20230301143203-a9d515a09cc2 h1:DklsrG3dyBCFEj5IhUbnKptjxatkF07cF2ak3yi77so=
700700
github.com/asaskevich/govalidator v0.0.0-20230301143203-a9d515a09cc2/go.mod h1:WaHUgvxTVq04UNunO+XhnAqY/wQc+bxr74GqbsZ/Jqw=
701701
github.com/aws/aws-sdk-go v1.44.122/go.mod h1:y4AeaBuwd2Lk+GepC1E9v0qOiTws0MIWAX4oIKwKHZo=
702-
github.com/aws/aws-sdk-go v1.55.7 h1:UJrkFq7es5CShfBwlWAC8DA077vp8PyVbQd3lqLiztE=
703-
github.com/aws/aws-sdk-go v1.55.7/go.mod h1:eRwEWoyTWFMVYVQzKMNHWP5/RV4xIUGMQfXQHfHkpNU=
702+
github.com/aws/aws-sdk-go v1.55.5 h1:KKUZBfBoyqy5d3swXyiC7Q76ic40rYcbqH7qjh59kzU=
703+
github.com/aws/aws-sdk-go v1.55.5/go.mod h1:eRwEWoyTWFMVYVQzKMNHWP5/RV4xIUGMQfXQHfHkpNU=
704704
github.com/aws/aws-sdk-go-v2 v1.37.1 h1:SMUxeNz3Z6nqGsXv0JuJXc8w5YMtrQMuIBmDx//bBDY=
705705
github.com/aws/aws-sdk-go-v2 v1.37.1/go.mod h1:9Q0OoGQoboYIAJyslFyF1f5K1Ryddop8gqMhWx/n4Wg=
706706
github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream v1.7.0 h1:6GMWV6CNpA/6fbFHnoAjrv4+LGfyTqZz2LtCHnspgDg=

0 commit comments

Comments
 (0)