Skip to content

Commit 054ff36

Browse files
committed
feat: Add all ManagedMachineAMITypes supported by AWS API
1 parent 517ae6c commit 054ff36

File tree

2 files changed

+45
-2
lines changed

2 files changed

+45
-2
lines changed

config/crd/bases/infrastructure.cluster.x-k8s.io_awsmanagedmachinepools.yaml

Lines changed: 14 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -539,9 +539,22 @@ spec:
539539
- AL2_x86_64
540540
- AL2_x86_64_GPU
541541
- AL2_ARM_64
542+
- CUSTOM
543+
- BOTTLEROCKET_ARM_64
544+
- BOTTLEROCKET_x86_64
545+
- BOTTLEROCKET_ARM_64_FIPS
546+
- BOTTLEROCKET_x86_64_FIPS
547+
- BOTTLEROCKET_ARM_64_NVIDIA
548+
- BOTTLEROCKET_x86_64_NVIDIA
549+
- WINDOWS_CORE_2019_x86_64
550+
- WINDOWS_FULL_2019_x86_64
551+
- WINDOWS_CORE_2022_x86_64
552+
- WINDOWS_FULL_2022_x86_64
542553
- AL2023_x86_64_STANDARD
543554
- AL2023_ARM_64_STANDARD
544-
- CUSTOM
555+
- AL2023_x86_64_NEURON
556+
- AL2023_x86_64_NVIDIA
557+
- AL2023_ARM_64_NVIDIA
545558
type: string
546559
amiVersion:
547560
description: |-

exp/api/v1beta2/awsmanagedmachinepool_types.go

Lines changed: 31 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,8 @@ import (
2727
)
2828

2929
// ManagedMachineAMIType specifies which AWS AMI to use for a managed MachinePool.
30+
// Source of truth can be found using the link below:
31+
// https://docs.aws.amazon.com/eks/latest/APIReference/API_CreateNodegroup.html#AmazonEKS-CreateNodegroup-request-amiType
3032
type ManagedMachineAMIType string
3133

3234
const (
@@ -36,10 +38,38 @@ const (
3638
Al2x86_64GPU ManagedMachineAMIType = "AL2_x86_64_GPU"
3739
// Al2Arm64 is the Arm AMI type.
3840
Al2Arm64 ManagedMachineAMIType = "AL2_ARM_64"
41+
// Custom is the custom AMI type.
42+
Custom ManagedMachineAMIType = "CUSTOM"
43+
// BottleRocketArm64 is the Arm AMI type.
44+
BottleRocketArm64 ManagedMachineAMIType = "BOTTLEROCKET_ARM_64"
45+
// BottleRocketx86_64 is the BottleRocket x86-64 AMI type.
46+
BottleRocketx86_64 ManagedMachineAMIType = "BOTTLEROCKET_x86_64"
47+
// BottleRocketArm64Fips is the BottleRocket Arm Fips AMI type.
48+
BottleRocketArm64Fips ManagedMachineAMIType = "BOTTLEROCKET_ARM_64_FIPS"
49+
// BottleRocketx86_64Fips is the BottleRocket x86-64 Fips AMI type.
50+
BottleRocketx86_64Fips ManagedMachineAMIType = "BOTTLEROCKET_x86_64_FIPS"
51+
// BottleRocketArm64Nvidia is the BottleRocket Arm Nvidia AMI type.
52+
BottleRocketArm64Nvidia ManagedMachineAMIType = "BOTTLEROCKET_ARM_64_NVIDIA"
53+
// BottleRocketx86_64Nvidia is the BottleRocket x86-64 Nvidia AMI type.
54+
BottleRocketx86_64Nvidia ManagedMachineAMIType = "BOTTLEROCKET_x86_64_NVIDIA"
55+
// WindowsCore2019x86_64 is the Windows Core 2019 x86-64 AMI type.
56+
WindowsCore2019x86_64 ManagedMachineAMIType = "WINDOWS_CORE_2019_x86_64"
57+
// WindowsFull2019x86_64 is the Windows Full 2019 x86-64 AMI type.
58+
WindowsFull2019x86_64 ManagedMachineAMIType = "WINDOWS_FULL_2019_x86_64"
59+
// WindowsCore2022x86_64 is the Windows Core 2022 x86-64 AMI type.
60+
WindowsCore2022x86_64 ManagedMachineAMIType = "WINDOWS_CORE_2022_x86_64"
61+
// WindowsFull2022x86_64 is the Windows Full 2022 x86-64 AMI type.
62+
WindowsFull2022x86_64 ManagedMachineAMIType = "WINDOWS_FULL_2022_x86_64"
3963
// Al2023x86_64 is the AL2023 x86-64 AMI type.
4064
Al2023x86_64 ManagedMachineAMIType = "AL2023_x86_64_STANDARD"
4165
// Al2023Arm64 is the AL2023 Arm AMI type.
4266
Al2023Arm64 ManagedMachineAMIType = "AL2023_ARM_64_STANDARD"
67+
// Al2023x86_64Neuron is the AL2023 x86-64 Neuron AMI type.
68+
Al2023x86_64Neuron ManagedMachineAMIType = "AL2023_x86_64_NEURON"
69+
// Al2023x86_64Nvidia is the AL2023 x86-64 Nvidia AMI type.
70+
Al2023x86_64Nvidia ManagedMachineAMIType = "AL2023_x86_64_NVIDIA"
71+
// Al2023Arm64Nvidia is the AL2023 Arm Nvidia AMI type.
72+
Al2023Arm64Nvidia ManagedMachineAMIType = "AL2023_ARM_64_NVIDIA"
4373
)
4474

4575
// ManagedMachinePoolCapacityType specifies the capacity type to be used for the managed MachinePool.
@@ -129,7 +159,7 @@ type AWSManagedMachinePoolSpec struct {
129159
AMIVersion *string `json:"amiVersion,omitempty"`
130160

131161
// AMIType defines the AMI type
132-
// +kubebuilder:validation:Enum:=AL2_x86_64;AL2_x86_64_GPU;AL2_ARM_64;AL2023_x86_64_STANDARD;AL2023_ARM_64_STANDARD;CUSTOM
162+
// +kubebuilder:validation:Enum:=AL2_x86_64;AL2_x86_64_GPU;AL2_ARM_64;CUSTOM;BOTTLEROCKET_ARM_64;BOTTLEROCKET_x86_64;BOTTLEROCKET_ARM_64_FIPS;BOTTLEROCKET_x86_64_FIPS;BOTTLEROCKET_ARM_64_NVIDIA;BOTTLEROCKET_x86_64_NVIDIA;WINDOWS_CORE_2019_x86_64;WINDOWS_FULL_2019_x86_64;WINDOWS_CORE_2022_x86_64;WINDOWS_FULL_2022_x86_64;AL2023_x86_64_STANDARD;AL2023_ARM_64_STANDARD;AL2023_x86_64_NEURON;AL2023_x86_64_NVIDIA;AL2023_ARM_64_NVIDIA
133163
// +kubebuilder:default:=AL2_x86_64
134164
// +optional
135165
AMIType *ManagedMachineAMIType `json:"amiType,omitempty"`

0 commit comments

Comments
 (0)