Skip to content

Commit

Permalink
OCM-9885 | feat: add validation for node pool custom disk size
Browse files Browse the repository at this point in the history
Signed-off-by: wkutler <[email protected]>
  • Loading branch information
willkutler committed Aug 1, 2024
1 parent f7ce367 commit a9880ef
Showing 1 changed file with 16 additions and 0 deletions.
16 changes: 16 additions & 0 deletions pkg/machinepool/validations/disk_size.go
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,9 @@ const (
// machinePoolRootVolumeSizeMaxAsOf414 is the maximum size of the root volume as of 4.14
// 16 TiB - limit as of 4.14
machinePoolRootVolumeSizeMaxAsOf414 = 16384
// constants for node pool root size validation
nodePoolRootAWSVolumeSizeMin = 128
nodePoolRootAWSVolumeSizeMax = 16384
)

// ValidateMachinePoolRootDiskSize validates the root volume size for a machine pool in AWS.
Expand All @@ -37,6 +40,19 @@ func ValidateMachinePoolRootDiskSize(version string, machinePoolRootVolumeSize i
return nil
}

// ValidateNodePoolRootDiskSize validates the root volume size for a node pool in AWS.
func ValidateNodePoolRootDiskSize(nodePoolRootVolumeSize int) error {
if nodePoolRootVolumeSize < nodePoolRootAWSVolumeSizeMin ||
nodePoolRootVolumeSize > nodePoolRootAWSVolumeSizeMax {
return fmt.Errorf("Invalid root disk size: %d GiB. Must be between %d GiB and %d GiB.",
nodePoolRootVolumeSize,
nodePoolRootAWSVolumeSizeMin,
nodePoolRootAWSVolumeSizeMax)
}

return nil
}

// getAWSVolumeMaxSize returns the maximum size of the root volume for a machine pool in AWS.
func getAWSVolumeMaxSize(version string) (int, error) {
version414, _ := semver.NewVersion("4.14.0")
Expand Down

0 comments on commit a9880ef

Please sign in to comment.