Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Enable FIPS and DualStack endpoint configuration #88

Merged
merged 4 commits into from
Jan 28, 2022
Merged

Conversation

gdavison
Copy link
Contributor

The 2021-11-06 Release of the AWS SDK for Go v2 and the AWS SDK for Go v1.42.0 add support for configuring FIPS and DualStack API endpoints using environment variables, the shared configuration file, and programmatically.

This PR adds configuration parameters to awsbase.Config and passes FIPS and DualStack configuration to the AWS SDK v1 shim layer

@gdavison gdavison requested a review from a team as a code owner January 26, 2022 21:56
Copy link
Contributor

@ewbankkit ewbankkit left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM 🚀.

% make test
go test -timeout=30s -parallel=4 ./...
go: downloading github.com/aws/aws-sdk-go-v2/service/iam v1.16.0
ok      github.com/hashicorp/aws-sdk-go-base/v2 6.591s
?       github.com/hashicorp/aws-sdk-go-base/v2/internal/awsconfig      [no test files]
?       github.com/hashicorp/aws-sdk-go-base/v2/internal/config [no test files]
?       github.com/hashicorp/aws-sdk-go-base/v2/internal/constants      [no test files]
?       github.com/hashicorp/aws-sdk-go-base/v2/internal/endpoints      [no test files]
?       github.com/hashicorp/aws-sdk-go-base/v2/internal/httpclient     [no test files]
?       github.com/hashicorp/aws-sdk-go-base/v2/mockdata        [no test files]
?       github.com/hashicorp/aws-sdk-go-base/v2/servicemocks    [no test files]
cd v2/awsv1shim && go test -timeout=30s -parallel=4 ./...
go: downloading github.com/aws/aws-sdk-go v1.42.41
ok      github.com/hashicorp/aws-sdk-go-base/v2/awsv1shim/v2    5.997s
?       github.com/hashicorp/aws-sdk-go-base/v2/awsv1shim/v2/mockdata   [no test files]
ok      github.com/hashicorp/aws-sdk-go-base/v2/awsv1shim/v2/tfawserr   0.784s

Copy link
Member

@YakDriver YakDriver left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Not that you need a second opinion but looks great! 🎉

% go test ./...
go: downloading github.com/aws/aws-sdk-go-v2/credentials v1.8.0
go: downloading github.com/aws/aws-sdk-go-v2/config v1.13.0
go: downloading github.com/aws/aws-sdk-go-v2 v1.13.0
go: downloading github.com/aws/smithy-go v1.10.0
go: downloading github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.10.0
go: downloading github.com/aws/aws-sdk-go-v2/service/iam v1.16.0
go: downloading github.com/aws/aws-sdk-go-v2/service/sts v1.14.0
go: downloading github.com/google/go-cmp v0.5.7
go: downloading github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.7.0
go: downloading github.com/aws/aws-sdk-go-v2/internal/ini v1.3.4
go: downloading github.com/aws/aws-sdk-go-v2/service/sso v1.9.0
go: downloading github.com/aws/aws-sdk-go-v2/internal/configsources v1.1.4
go: downloading github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.2.0
ok  	github.com/hashicorp/aws-sdk-go-base/v2	5.974s
?   	github.com/hashicorp/aws-sdk-go-base/v2/internal/awsconfig	[no test files]
?   	github.com/hashicorp/aws-sdk-go-base/v2/internal/config	[no test files]
?   	github.com/hashicorp/aws-sdk-go-base/v2/internal/constants	[no test files]
?   	github.com/hashicorp/aws-sdk-go-base/v2/internal/endpoints	[no test files]
?   	github.com/hashicorp/aws-sdk-go-base/v2/internal/httpclient	[no test files]
?   	github.com/hashicorp/aws-sdk-go-base/v2/mockdata	[no test files]
?   	github.com/hashicorp/aws-sdk-go-base/v2/servicemocks	[no test files]
cd v2/awsv1shim && go test -timeout=30s -parallel=4 ./...
go: downloading github.com/aws/aws-sdk-go v1.42.41
ok  	github.com/hashicorp/aws-sdk-go-base/v2/awsv1shim/v2	5.645s
?   	github.com/hashicorp/aws-sdk-go-base/v2/awsv1shim/v2/mockdata	[no test files]
ok  	github.com/hashicorp/aws-sdk-go-base/v2/awsv1shim/v2/tfawserr	0.737s

UseDualStackEndpoint: true,
},
SharedConfigurationFile: `
[default]
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Love these test cases for all the different ways 🎉

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants