Skip to content

Commit

Permalink
move function to private directory
Browse files Browse the repository at this point in the history
  • Loading branch information
paulhcsun committed Jan 2, 2025
1 parent 13b9f67 commit 69103b1
Show file tree
Hide file tree
Showing 3 changed files with 15 additions and 13 deletions.
13 changes: 1 addition & 12 deletions packages/aws-cdk-lib/aws-eks/lib/managed-nodegroup.ts
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@ import { InstanceType, ISecurityGroup, SubnetSelection, InstanceArchitecture, In
import { IRole, ManagedPolicy, PolicyStatement, Role, ServicePrincipal } from '../../aws-iam';
import { IResource, Resource, Annotations, withResolved, FeatureFlags } from '../../core';
import * as cxapi from '../../cx-api';
import { isGpuInstanceType } from './private/nodegroup';

/**
* NodeGroup interface
Expand Down Expand Up @@ -608,18 +609,6 @@ const gpuAmiTypes: NodegroupAmiType[] = [
NodegroupAmiType.BOTTLEROCKET_ARM_64_NVIDIA,
];

/**
* This function check if the instanceType is GPU instance.
* @param instanceType The EC2 instance type
*/
export function isGpuInstanceType(instanceType: InstanceType): boolean {
//compare instanceType to known GPU InstanceTypes
const knownGpuInstanceTypes = [InstanceClass.P2, InstanceClass.P3, InstanceClass.P3DN, InstanceClass.P4DE, InstanceClass.P4D,
InstanceClass.G3S, InstanceClass.G3, InstanceClass.G4DN, InstanceClass.G4AD, InstanceClass.G5, InstanceClass.G5G, InstanceClass.G6,
InstanceClass.G6E, InstanceClass.INF1, InstanceClass.INF2];
return knownGpuInstanceTypes.some((c) => instanceType.sameInstanceClassAs(InstanceType.of(c, InstanceSize.LARGE)));
}

/**
* This function check if the instanceType is supported by Windows AMI.
* https://docs.aws.amazon.com/eks/latest/userguide/windows-support.html
Expand Down
12 changes: 12 additions & 0 deletions packages/aws-cdk-lib/aws-eks/lib/private/nodegroup.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
import { InstanceClass, InstanceSize, InstanceType } from '../../../aws-ec2';
/**
* This function check if the instanceType is GPU instance.
* @param instanceType The EC2 instance type
*/
export function isGpuInstanceType(instanceType: InstanceType): boolean {
//compare instanceType to known GPU InstanceTypes
const knownGpuInstanceTypes = [InstanceClass.P2, InstanceClass.P3, InstanceClass.P3DN, InstanceClass.P4DE, InstanceClass.P4D,
InstanceClass.G3S, InstanceClass.G3, InstanceClass.G4DN, InstanceClass.G4AD, InstanceClass.G5, InstanceClass.G5G, InstanceClass.G6,
InstanceClass.G6E, InstanceClass.INF1, InstanceClass.INF2];
return knownGpuInstanceTypes.some((c) => instanceType.sameInstanceClassAs(InstanceType.of(c, InstanceSize.LARGE)));
}
3 changes: 2 additions & 1 deletion packages/aws-cdk-lib/aws-eks/test/nodegroup.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,8 @@ import * as iam from '../../aws-iam';
import * as cdk from '../../core';
import * as cxapi from '../../cx-api';
import * as eks from '../lib';
import { isGpuInstanceType, NodegroupAmiType, TaintEffect } from '../lib';
import { NodegroupAmiType, TaintEffect } from '../lib';
import { isGpuInstanceType } from '../lib/private/nodegroup';

/* eslint-disable max-len */

Expand Down

0 comments on commit 69103b1

Please sign in to comment.