Skip to content

Commit 6021591

Browse files
committed
e2e aws network validation test
1 parent fd9a827 commit 6021591

File tree

15 files changed

+361
-279
lines changed

15 files changed

+361
-279
lines changed

go.mod

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@ require (
1212
github.com/aws/aws-sdk-go-v2/service/ec2 v1.251.2
1313
github.com/aws/aws-sdk-go-v2/service/eks v1.73.3
1414
github.com/aws/aws-sdk-go-v2/service/iam v1.47.5
15+
github.com/aws/smithy-go v1.23.0
1516
github.com/bojanz/currency v1.3.1
1617
github.com/cenkalti/backoff v2.2.1+incompatible
1718
github.com/cenkalti/backoff/v4 v4.3.0
@@ -43,7 +44,6 @@ require (
4344
github.com/aws/aws-sdk-go-v2/service/sso v1.29.3 // indirect
4445
github.com/aws/aws-sdk-go-v2/service/ssooidc v1.34.4 // indirect
4546
github.com/aws/aws-sdk-go-v2/service/sts v1.38.4 // indirect
46-
github.com/aws/smithy-go v1.23.0 // indirect
4747
github.com/cockroachdb/apd/v3 v3.2.1 // indirect
4848
github.com/davecgh/go-spew v1.1.1 // indirect
4949
github.com/emicklei/go-restful/v3 v3.12.2 // indirect

internal/validation/suite.go

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -130,7 +130,6 @@ func RunInstanceLifecycleValidation(t *testing.T, config ProviderConfig) {
130130
type NetworkValidationOpts struct {
131131
Name string
132132
RefID string
133-
Location string
134133
CidrBlock string
135134
PublicSubnetCidrBlock string
136135
Tags map[string]string
@@ -156,7 +155,6 @@ func RunNetworkValidation(t *testing.T, config ProviderConfig, opts NetworkValid
156155
vpc, err := v1.ValidateCreateVPC(ctx, client, v1.CreateVPCArgs{
157156
Name: opts.Name,
158157
RefID: opts.RefID,
159-
Location: opts.Location,
160158
CidrBlock: opts.CidrBlock,
161159
Subnets: []v1.CreateSubnetArgs{
162160
{CidrBlock: opts.PublicSubnetCidrBlock, Type: v1.SubnetTypePublic},
@@ -253,7 +251,6 @@ type KubernetesValidationNodeGroupOpts struct {
253251
type KubernetesValidationNetworkOpts struct {
254252
Name string
255253
RefID string
256-
Location string
257254
CidrBlock string
258255
PublicSubnetCidrBlock string
259256
PrivateSubnetCidrBlock string
@@ -286,7 +283,6 @@ func RunKubernetesValidation(t *testing.T, config ProviderConfig, opts Kubernete
286283
vpc, err := v1.ValidateCreateVPC(ctx, client, v1.CreateVPCArgs{
287284
Name: opts.NetworkOpts.Name,
288285
RefID: opts.NetworkOpts.RefID,
289-
Location: opts.NetworkOpts.Location,
290286
CidrBlock: opts.NetworkOpts.CidrBlock,
291287
Subnets: []v1.CreateSubnetArgs{
292288
{CidrBlock: opts.NetworkOpts.PublicSubnetCidrBlock, Type: v1.SubnetTypePublic},
@@ -332,7 +328,6 @@ func RunKubernetesValidation(t *testing.T, config ProviderConfig, opts Kubernete
332328
VPCID: vpc.ID,
333329
SubnetIDs: []v1.CloudProviderResourceID{vpc.Subnets[0].ID},
334330
KubernetesVersion: opts.KubernetesVersion,
335-
Location: opts.NetworkOpts.Location,
336331
Tags: opts.Tags,
337332
})
338333
require.NoError(t, err, "ValidateCreateKubernetesCluster should pass")

v1/providers/aws/capabilities.go

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,11 @@
11
package v1
22

33
import (
4-
"context"
5-
64
v1 "github.com/brevdev/cloud/v1"
75
)
86

9-
func (c *AWSClient) GetCapabilities(_ context.Context) (v1.Capabilities, error) {
10-
capabilities := v1.Capabilities{
7+
func GetAWSCapabilities() v1.Capabilities {
8+
return v1.Capabilities{
119
v1.CapabilityVPC,
1210
}
13-
14-
return capabilities, nil
1511
}

v1/providers/aws/client.go

Lines changed: 14 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -47,38 +47,39 @@ func (c *AWSCredential) GetTenantID() (string, error) {
4747
}
4848

4949
func (c *AWSCredential) GetCapabilities(ctx context.Context) (v1.Capabilities, error) {
50-
client, err := c.MakeClient(ctx, "")
51-
if err != nil {
52-
return nil, err
53-
}
54-
return client.GetCapabilities(ctx)
50+
return GetAWSCapabilities(), nil
5551
}
5652

57-
func (c *AWSCredential) MakeClient(_ context.Context, _ string) (v1.CloudClient, error) {
58-
return NewAWSClient(c.RefID, c.AccessKeyID, c.SecretAccessKey)
53+
func (c *AWSCredential) MakeClient(_ context.Context, region string) (v1.CloudClient, error) {
54+
return NewAWSClient(c.RefID, c.AccessKeyID, c.SecretAccessKey, region)
5955
}
6056

6157
type AWSClient struct {
6258
v1.NotImplCloudClient
6359
refID string
6460
awsConfig aws.Config
61+
region string
6562
}
6663

6764
var _ v1.CloudClient = &AWSClient{}
6865

69-
func NewAWSClient(refID string, accessKeyID string, secretAccessKey string) (*AWSClient, error) {
66+
func NewAWSClient(refID string, accessKeyID string, secretAccessKey string, region string) (*AWSClient, error) {
7067
ctx := context.Background()
7168

7269
awsCredentials := credentials.NewStaticCredentialsProvider(accessKeyID, secretAccessKey, "")
7370

74-
awsConfig, err := config.LoadDefaultConfig(ctx, config.WithCredentialsProvider(awsCredentials))
71+
awsConfig, err := config.LoadDefaultConfig(ctx,
72+
config.WithCredentialsProvider(awsCredentials),
73+
config.WithRegion(region),
74+
)
7575
if err != nil {
7676
return nil, fmt.Errorf("failed to load AWS config: %w", err)
7777
}
7878

7979
return &AWSClient{
8080
refID: refID,
8181
awsConfig: awsConfig,
82+
region: region,
8283
}, nil
8384
}
8485

@@ -93,3 +94,7 @@ func (c *AWSClient) GetCloudProviderID() v1.CloudProviderID {
9394
func (c *AWSClient) GetReferenceID() string {
9495
return c.refID
9596
}
97+
98+
func (c *AWSClient) GetCapabilities(_ context.Context) (v1.Capabilities, error) {
99+
return GetAWSCapabilities(), nil
100+
}

0 commit comments

Comments
 (0)