fix(region): node pool instance min count

This commit is contained in:
ioito
2023-05-26 15:05:41 +08:00
parent 543e1c5cdb
commit 9ca8553396
+11 -2
View File
@@ -63,9 +63,9 @@ type SKubeNodePool struct {
NetworkIds *api.SKubeNetworkIds `list:"user" update:"user" create:"required"`
InstanceTypes *api.SInstanceTypes `list:"user" update:"user" create:"required"`
MinInstanceCount int `nullable:"false" list:"user" create:"optional" default:"2"`
MinInstanceCount int `nullable:"false" list:"user" create:"optional" default:"0"`
MaxInstanceCount int `nullable:"false" list:"user" create:"optional" default:"2"`
DesiredInstanceCount int `nullable:"false" list:"user" create:"optional" default:"2"`
DesiredInstanceCount int `nullable:"false" list:"user" create:"optional" default:"0"`
RootDiskSizeGb int `nullable:"false" list:"user" create:"optional" default:"100"`
@@ -333,6 +333,15 @@ func (manager *SKubeNodePoolManager) ValidateCreateData(ctx context.Context, use
}
}
if input.DesiredInstanceCount > 0 {
if input.MinInstanceCount > input.DesiredInstanceCount {
return nil, httperrors.NewOutOfRangeError("min_instance_count must less or equal to desired_instance_count")
}
if input.MaxInstanceCount < input.DesiredInstanceCount {
return nil, httperrors.NewOutOfRangeError("max_instance_count must greater than or equal to desired_instance_count")
}
}
region, err := cluster.GetRegion()
if err != nil {
return nil, err