Skip to content
This repository was archived by the owner on Apr 11, 2024. It is now read-only.

Commit c5067a4

Browse files
committed
fix: set defaults for AWS CP and Worker instanceType
1 parent 3f673f9 commit c5067a4

File tree

13 files changed

+31
-49
lines changed

13 files changed

+31
-49
lines changed

api/v1alpha1/aws_node_types.go

Lines changed: 17 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -4,15 +4,16 @@
44
package v1alpha1
55

66
import (
7-
"github.com/d2iq-labs/cluster-api-runtime-extensions-nutanix/api/variables"
87
v1 "k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1"
98
"k8s.io/utils/ptr"
109
clusterv1 "sigs.k8s.io/cluster-api/api/v1beta1"
10+
11+
"github.com/d2iq-labs/cluster-api-runtime-extensions-nutanix/api/variables"
1112
)
1213

1314
const (
1415
AWSControlPlaneInstanceType InstanceType = "m5.xlarge"
15-
AWSWorkerInstanceType InstanceType = "m5.xlarge"
16+
AWSWorkerInstanceType InstanceType = "m5.2xlarge"
1617
)
1718

1819
type AWSNodeSpec struct {
@@ -31,6 +32,18 @@ type AWSNodeSpec struct {
3132
AdditionalSecurityGroups AdditionalSecurityGroup `json:"additionalSecurityGroups,omitempty"`
3233
}
3334

35+
func NewAWSControlPlaneNodeSpec() *AWSNodeSpec {
36+
return &AWSNodeSpec{
37+
InstanceType: ptr.To(AWSControlPlaneInstanceType),
38+
}
39+
}
40+
41+
func NewAWSWorkerNodeSpec() *AWSNodeSpec {
42+
return &AWSNodeSpec{
43+
InstanceType: ptr.To(AWSWorkerInstanceType),
44+
}
45+
}
46+
3447
type AdditionalSecurityGroup []SecurityGroup
3548

3649
type SecurityGroup struct {
@@ -57,37 +70,21 @@ func (AdditionalSecurityGroup) VariableSchema() clusterv1.VariableSchema {
5770
}
5871

5972
func (a AWSNodeSpec) VariableSchema() clusterv1.VariableSchema {
60-
instanceType := InstanceType("")
61-
if a.InstanceType != nil {
62-
instanceType = *a.InstanceType
63-
}
64-
6573
return clusterv1.VariableSchema{
6674
OpenAPIV3Schema: clusterv1.JSONSchemaProps{
6775
Description: "AWS Node configuration",
6876
Type: "object",
6977
Properties: map[string]clusterv1.JSONSchemaProps{
7078
"iamInstanceProfile": IAMInstanceProfile("").VariableSchema().OpenAPIV3Schema,
71-
"instanceType": instanceType.VariableSchema().OpenAPIV3Schema,
79+
"instanceType": a.InstanceType.VariableSchema().OpenAPIV3Schema,
7280
"ami": AMISpec{}.VariableSchema().OpenAPIV3Schema,
7381
"additionalSecurityGroups": AdditionalSecurityGroup{}.VariableSchema().OpenAPIV3Schema,
7482
},
83+
Required: []string{"instanceType"},
7584
},
7685
}
7786
}
7887

79-
func AWSControlPlaneNodeSpec() *AWSNodeSpec {
80-
return &AWSNodeSpec{
81-
InstanceType: ptr.To(AWSControlPlaneInstanceType),
82-
}
83-
}
84-
85-
func AWSWorkerNodeSpec() *AWSNodeSpec {
86-
return &AWSNodeSpec{
87-
InstanceType: ptr.To(AWSWorkerInstanceType),
88-
}
89-
}
90-
9188
type IAMInstanceProfile string
9289

9390
func (IAMInstanceProfile) VariableSchema() clusterv1.VariableSchema {
@@ -111,18 +108,6 @@ func (i InstanceType) VariableSchema() clusterv1.VariableSchema {
111108
}
112109
}
113110

114-
type ControlPlaneInstanceType string
115-
116-
func (ControlPlaneInstanceType) VariableSchema() clusterv1.VariableSchema {
117-
return clusterv1.VariableSchema{
118-
OpenAPIV3Schema: clusterv1.JSONSchemaProps{
119-
Type: "string",
120-
Description: "The AWS instance type to use for the cluster Machines",
121-
Default: variables.MustMarshal("m5.xlarge"),
122-
},
123-
}
124-
}
125-
126111
type AMISpec struct {
127112
// ID is an explicit AMI to use.
128113
// +optional

api/v1alpha1/clusterconfig_types.go

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -57,9 +57,6 @@ type ClusterConfigSpec struct {
5757

5858
func (s ClusterConfigSpec) VariableSchema() clusterv1.VariableSchema { //nolint:gocritic,lll // Passed by value for no potential side-effect.
5959
clusterConfigProps := GenericClusterConfig{}.VariableSchema()
60-
if s.ControlPlane == nil {
61-
s.ControlPlane = &NodeConfigSpec{}
62-
}
6360
switch {
6461
case s.AWS != nil:
6562
maps.Copy(
@@ -94,11 +91,11 @@ func (s ClusterConfigSpec) VariableSchema() clusterv1.VariableSchema { //nolint:
9491
return clusterConfigProps
9592
}
9693

97-
func DefaultAWSClusterConfigSpec() *ClusterConfigSpec {
94+
func NewAWSClusterConfigSpec() *ClusterConfigSpec {
9895
return &ClusterConfigSpec{
9996
AWS: &AWSSpec{},
10097
ControlPlane: &NodeConfigSpec{
101-
AWS: AWSControlPlaneNodeSpec(),
98+
AWS: NewAWSControlPlaneNodeSpec(),
10299
},
103100
}
104101
}

api/v1alpha1/node_types.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -63,9 +63,9 @@ func (s NodeConfigSpec) VariableSchema() clusterv1.VariableSchema {
6363
return nodeConfigProps
6464
}
6565

66-
func DefaultAWSWorkerConfigSpec() *NodeConfigSpec {
66+
func NewAWSWorkerConfigSpec() *NodeConfigSpec {
6767
return &NodeConfigSpec{
68-
AWS: AWSWorkerNodeSpec(),
68+
AWS: NewAWSWorkerNodeSpec(),
6969
}
7070
}
7171

pkg/handlers/aws/clusterconfig/variables.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ func (h *awsClusterConfigVariableHandler) DiscoverVariables(
4343
resp.Variables = append(resp.Variables, clusterv1.ClusterClassVariable{
4444
Name: clusterconfig.MetaVariableName,
4545
Required: true,
46-
Schema: v1alpha1.DefaultAWSClusterConfigSpec().VariableSchema(),
46+
Schema: v1alpha1.NewAWSClusterConfigSpec().VariableSchema(),
4747
})
4848
resp.SetStatus(runtimehooksv1.ResponseStatusSuccess)
4949
}

pkg/handlers/aws/mutation/ami/variables_test.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ func TestVariableValidation(t *testing.T) {
1818
capitest.ValidateDiscoverVariables(
1919
t,
2020
clusterconfig.MetaVariableName,
21-
ptr.To(v1alpha1.ClusterConfigSpec{AWS: &v1alpha1.AWSSpec{}}.VariableSchema()),
21+
ptr.To(v1alpha1.NewAWSClusterConfigSpec().VariableSchema()),
2222
true,
2323
awsclusterconfig.NewVariable,
2424
capitest.VariableTestDef{

pkg/handlers/aws/mutation/controlplaneloadbalancer/variables_test.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ func TestVariableValidation(t *testing.T) {
1919
capitest.ValidateDiscoverVariables(
2020
t,
2121
clusterconfig.MetaVariableName,
22-
ptr.To(v1alpha1.ClusterConfigSpec{AWS: &v1alpha1.AWSSpec{}}.VariableSchema()),
22+
ptr.To(v1alpha1.NewAWSClusterConfigSpec().VariableSchema()),
2323
true,
2424
awsclusterconfig.NewVariable,
2525
capitest.VariableTestDef{

pkg/handlers/aws/mutation/iaminstanceprofile/variables_test.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ func TestVariableValidation(t *testing.T) {
1818
capitest.ValidateDiscoverVariables(
1919
t,
2020
clusterconfig.MetaVariableName,
21-
ptr.To(v1alpha1.ClusterConfigSpec{AWS: &v1alpha1.AWSSpec{}}.VariableSchema()),
21+
ptr.To(v1alpha1.NewAWSClusterConfigSpec().VariableSchema()),
2222
true,
2323
awsclusterconfig.NewVariable,
2424
capitest.VariableTestDef{

pkg/handlers/aws/mutation/instancetype/variables_test.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ func TestVariableValidation(t *testing.T) {
1818
capitest.ValidateDiscoverVariables(
1919
t,
2020
clusterconfig.MetaVariableName,
21-
ptr.To(v1alpha1.DefaultAWSClusterConfigSpec().VariableSchema()),
21+
ptr.To(v1alpha1.NewAWSClusterConfigSpec().VariableSchema()),
2222
true,
2323
awsclusterconfig.NewVariable,
2424
capitest.VariableTestDef{

pkg/handlers/aws/mutation/network/variables_test.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ func TestVariableValidation(t *testing.T) {
1818
capitest.ValidateDiscoverVariables(
1919
t,
2020
clusterconfig.MetaVariableName,
21-
ptr.To(v1alpha1.ClusterConfigSpec{AWS: &v1alpha1.AWSSpec{}}.VariableSchema()),
21+
ptr.To(v1alpha1.NewAWSClusterConfigSpec().VariableSchema()),
2222
true,
2323
awsclusterconfig.NewVariable,
2424
capitest.VariableTestDef{

pkg/handlers/aws/mutation/region/variables_test.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ func TestVariableValidation(t *testing.T) {
1818
capitest.ValidateDiscoverVariables(
1919
t,
2020
clusterconfig.MetaVariableName,
21-
ptr.To(v1alpha1.ClusterConfigSpec{AWS: &v1alpha1.AWSSpec{}}.VariableSchema()),
21+
ptr.To(v1alpha1.NewAWSClusterConfigSpec().VariableSchema()),
2222
true,
2323
awsclusterconfig.NewVariable,
2424
capitest.VariableTestDef{

pkg/handlers/aws/mutation/securitygroups/variables_test.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ func TestVariableValidation(t *testing.T) {
1818
capitest.ValidateDiscoverVariables(
1919
t,
2020
clusterconfig.MetaVariableName,
21-
ptr.To(v1alpha1.ClusterConfigSpec{AWS: &v1alpha1.AWSSpec{}}.VariableSchema()),
21+
ptr.To(v1alpha1.NewAWSClusterConfigSpec().VariableSchema()),
2222
true,
2323
awsclusterconfig.NewVariable,
2424
capitest.VariableTestDef{

pkg/handlers/aws/workerconfig/variables.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ func (h *awsWorkerConfigVariableHandler) DiscoverVariables(
4343
resp.Variables = append(resp.Variables, clusterv1.ClusterClassVariable{
4444
Name: workerconfig.MetaVariableName,
4545
Required: false,
46-
Schema: v1alpha1.DefaultAWSWorkerConfigSpec().VariableSchema(),
46+
Schema: v1alpha1.NewAWSWorkerConfigSpec().VariableSchema(),
4747
})
4848
resp.SetStatus(runtimehooksv1.ResponseStatusSuccess)
4949
}

pkg/handlers/aws/workerconfig/variables_test.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ func TestVariableValidation(t *testing.T) {
1717
capitest.ValidateDiscoverVariables(
1818
t,
1919
workerconfig.MetaVariableName,
20-
ptr.To(v1alpha1.DefaultAWSWorkerConfigSpec().VariableSchema()),
20+
ptr.To(v1alpha1.NewAWSWorkerConfigSpec().VariableSchema()),
2121
false,
2222
NewVariable,
2323
capitest.VariableTestDef{

0 commit comments

Comments
 (0)