Skip to content

Commit cc111d3

Browse files
committed
feat: add GB300 VHD SKU to AgentBaker. Disable building it by default until we need it.
1 parent ceb0fff commit cc111d3

File tree

6 files changed

+47
-4
lines changed

6 files changed

+47
-4
lines changed

.pipelines/.vsts-vhd-builder-release.yaml

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -145,6 +145,10 @@ parameters:
145145
displayName: Build 2404 ARM64 GB200 Gen2 Containerd
146146
type: boolean
147147
default: true
148+
- name: build2404arm64gb300gen2containerd
149+
displayName: Build 2404 ARM64 GB300 Gen2 Containerd
150+
type: boolean
151+
default: false
148152
- name: build2204containerd
149153
displayName: Build 2204 Gen1 Containerd
150154
type: boolean
@@ -1305,6 +1309,30 @@ stages:
13051309
useOverrides: ${{ parameters.useOverrides }}
13061310
overrideBranch: ${{ parameters.overrideBranch }}
13071311
artifactName: 2404-arm64-gb200-gen2-containerd
1312+
- job: build2404arm64gb300gen2containerd
1313+
condition: eq('${{ parameters.build2404arm64gb300gen2containerd }}', true)
1314+
dependsOn: [ ]
1315+
timeoutInMinutes: 180
1316+
steps:
1317+
- bash: |
1318+
echo '##vso[task.setvariable variable=OS_SKU]Ubuntu'
1319+
echo '##vso[task.setvariable variable=OS_VERSION]24.04'
1320+
echo '##vso[task.setvariable variable=IMG_PUBLISHER]Canonical'
1321+
echo '##vso[task.setvariable variable=IMG_OFFER]ubuntu-24_04-lts'
1322+
echo '##vso[task.setvariable variable=IMG_SKU]server-arm64'
1323+
echo '##vso[task.setvariable variable=IMG_VERSION]latest'
1324+
echo '##vso[task.setvariable variable=HYPERV_GENERATION]V2'
1325+
echo '##vso[task.setvariable variable=AZURE_VM_SIZE]Standard_D16pds_v5'
1326+
echo '##vso[task.setvariable variable=FEATURE_FLAGS]GB300'
1327+
echo '##vso[task.setvariable variable=ARCHITECTURE]ARM64'
1328+
echo '##vso[task.setvariable variable=ENABLE_FIPS]False'
1329+
echo '##vso[task.setvariable variable=ENABLE_TRUSTED_LAUNCH]False'
1330+
displayName: Setup Build Variables
1331+
- template: ./templates/.builder-release-template.yaml
1332+
parameters:
1333+
useOverrides: ${{ parameters.useOverrides }}
1334+
overrideBranch: ${{ parameters.overrideBranch }}
1335+
artifactName: 2404-arm64-gb300-gen2-containerd
13081336
- stage: e2e
13091337
condition: and(succeeded(), ne(variables.SKIP_E2E_TESTS, 'true'))
13101338
variables:

.pipelines/templates/.builder-release-template.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -78,6 +78,7 @@ steps:
7878
if [[ "${HYPERV_GENERATION,,}" == "v2" ]]; then SKU_NAME="${SKU_NAME}gen2"; fi && \
7979
if [[ "${ARCHITECTURE,,}" == "arm64" ]]; then SKU_NAME="${SKU_NAME}arm64"; fi && \
8080
if grep -q "GB200" <<< "$FEATURE_FLAGS"; then SKU_NAME="${SKU_NAME}gb200"; fi && \
81+
if grep -q "GB300" <<< "$FEATURE_FLAGS"; then SKU_NAME="${SKU_NAME}gb300"; fi && \
8182
if [[ "${ENABLE_FIPS,,}" == "true" ]]; then SKU_NAME="${SKU_NAME}fips"; fi && \
8283
if grep -q "cvm" <<< "$FEATURE_FLAGS"; then SKU_NAME="${SKU_NAME}CVM"; fi && \
8384
if [[ "${IMG_SKU}" == *"minimal"* ]]; then SKU_NAME="${SKU_NAME}minimal"; fi && \

pkg/agent/datamodel/sig_config.go

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -103,6 +103,7 @@ var AvailableUbuntu2404Distros = []Distro{
103103
AKSUbuntuContainerd2404Gen2,
104104
AKSUbuntuArm64Containerd2404Gen2,
105105
AKSUbuntuArm64GB200Containerd2404Gen2,
106+
AKSUbuntuArm64GB300Containerd2404Gen2,
106107
AKSUbuntuContainerd2404CVMGen2,
107108
AKSUbuntuContainerd2404TLGen2,
108109
}
@@ -138,6 +139,7 @@ var AvailableContainerdDistros = []Distro{
138139
AKSUbuntuArm64Containerd2204Gen2,
139140
AKSUbuntuArm64Containerd2404Gen2,
140141
AKSUbuntuArm64GB200Containerd2404Gen2,
142+
AKSUbuntuArm64GB300Containerd2404Gen2,
141143
AKSUbuntuContainerd2404CVMGen2,
142144
AKSCBLMarinerV2Arm64Gen2,
143145
AKSAzureLinuxV2Arm64Gen2,
@@ -165,6 +167,7 @@ var AvailableGen2Distros = []Distro{
165167
AKSUbuntuArm64Containerd2204Gen2,
166168
AKSUbuntuArm64Containerd2404Gen2,
167169
AKSUbuntuArm64GB200Containerd2404Gen2,
170+
AKSUbuntuArm64GB300Containerd2404Gen2,
168171
AKSUbuntuContainerd2404CVMGen2,
169172
AKSUbuntuContainerd2204Gen2,
170173
AKSUbuntuContainerd2004CVMGen2,
@@ -456,6 +459,13 @@ var (
456459
Version: LinuxSIGImageVersion,
457460
}
458461

462+
SIGUbuntuArm64GB300Containerd2404Gen2ImageConfigTemplate = SigImageConfigTemplate{
463+
ResourceGroup: AKSUbuntuResourceGroup,
464+
Gallery: AKSUbuntuGalleryName,
465+
Definition: "2404gen2arm64gb300containerd",
466+
Version: LinuxSIGImageVersion,
467+
}
468+
459469
SIGUbuntuContainerd2404CVMGen2ImageConfigTemplate = SigImageConfigTemplate{
460470
ResourceGroup: AKSUbuntuResourceGroup,
461471
Gallery: AKSUbuntuGalleryName,
@@ -830,6 +840,7 @@ func getSigUbuntuImageConfigMapWithOpts(opts ...SigImageConfigOpt) map[Distro]Si
830840
AKSUbuntuArm64Containerd2204Gen2: SIGUbuntuArm64Containerd2204Gen2ImageConfigTemplate.WithOptions(opts...),
831841
AKSUbuntuArm64Containerd2404Gen2: SIGUbuntuArm64Containerd2404Gen2ImageConfigTemplate.WithOptions(opts...),
832842
AKSUbuntuArm64GB200Containerd2404Gen2: SIGUbuntuArm64GB200Containerd2404Gen2ImageConfigTemplate.WithOptions(opts...),
843+
AKSUbuntuArm64GB300Containerd2404Gen2: SIGUbuntuArm64GB300Containerd2404Gen2ImageConfigTemplate.WithOptions(opts...),
833844
AKSUbuntuContainerd2404CVMGen2: SIGUbuntuContainerd2404CVMGen2ImageConfigTemplate.WithOptions(opts...),
834845
AKSUbuntuContainerd2204TLGen2: SIGUbuntuContainerd2204TLGen2ImageConfigTemplate.WithOptions(opts...),
835846
AKSUbuntuMinimalContainerd2204: SIGUbuntuMinimalContainerd2204ImageConfigTemplate.WithOptions(opts...),

pkg/agent/datamodel/sig_config_test.go

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@ var _ = Describe("GetMaintainedLinuxSIGImageConfigMap", func() {
1313
AKSUbuntuArm64Containerd2204Gen2: SIGUbuntuArm64Containerd2204Gen2ImageConfigTemplate.WithOptions(),
1414
AKSUbuntuArm64Containerd2404Gen2: SIGUbuntuArm64Containerd2404Gen2ImageConfigTemplate.WithOptions(),
1515
AKSUbuntuArm64GB200Containerd2404Gen2: SIGUbuntuArm64GB200Containerd2404Gen2ImageConfigTemplate.WithOptions(),
16+
AKSUbuntuArm64GB300Containerd2404Gen2: SIGUbuntuArm64GB300Containerd2404Gen2ImageConfigTemplate.WithOptions(),
1617
AKSUbuntuContainerd2204: SIGUbuntuContainerd2204ImageConfigTemplate.WithOptions(),
1718
AKSUbuntuContainerd2204Gen2: SIGUbuntuContainerd2204Gen2ImageConfigTemplate.WithOptions(),
1819
AKSUbuntuContainerd2204TLGen2: SIGUbuntuContainerd2204TLGen2ImageConfigTemplate.WithOptions(),

pkg/agent/datamodel/types.go

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -176,6 +176,7 @@ const (
176176
AKSUbuntuArm64Containerd2204Gen2 Distro = "aks-ubuntu-arm64-containerd-22.04-gen2"
177177
AKSUbuntuArm64Containerd2404Gen2 Distro = "aks-ubuntu-arm64-containerd-24.04-gen2"
178178
AKSUbuntuArm64GB200Containerd2404Gen2 Distro = "aks-ubuntu-arm64-gb200-containerd-24.04-gen2"
179+
AKSUbuntuArm64GB300Containerd2404Gen2 Distro = "aks-ubuntu-arm64-gb300-containerd-24.04-gen2"
179180
AKSUbuntuContainerd2404CVMGen2 Distro = "aks-ubuntu-containerd-24.04-cvm-gen2"
180181
AKSCBLMarinerV2Arm64Gen2 Distro = "aks-cblmariner-v2-arm64-gen2"
181182
AKSAzureLinuxV2Arm64Gen2 Distro = "aks-azurelinux-v2-arm64-gen2"
@@ -257,6 +258,7 @@ var AKSDistrosAvailableOnVHD = []Distro{
257258
AKSUbuntuArm64Containerd2204Gen2,
258259
AKSUbuntuArm64Containerd2404Gen2,
259260
AKSUbuntuArm64GB200Containerd2404Gen2,
261+
AKSUbuntuArm64GB300Containerd2404Gen2,
260262
AKSUbuntuContainerd2404CVMGen2,
261263
AKSCBLMarinerV2Arm64Gen2,
262264
AKSAzureLinuxV2Arm64Gen2,

vhdbuilder/packer/convert-sig-to-classic-storage-account-blob.sh

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -84,9 +84,9 @@ elif [ "${OS_TYPE}" = "Linux" ] && grep -q "cvm" <<< "$FEATURE_FLAGS"; then
8484
} \
8585
} \
8686
}"
87-
elif [ "${OS_TYPE}" = "Linux" ] && grep -q "GB200" <<< "$FEATURE_FLAGS"; then
88-
echo "GB200: Creating standard disk from SIG image"
89-
# GB200 uses standard disk creation for now, but can be customized in the future if needed
87+
elif [ "${OS_TYPE}" = "Linux" ] && grep -q "GB[23]00" <<< "$FEATURE_FLAGS"; then
88+
echo "GB200/GB300: Creating standard disk from SIG image"
89+
# GB200/GB300 uses standard disk creation for now, but can be customized in the future if needed
9090
az resource create --id $disk_resource_id --api-version 2024-03-02 --is-full-object --location $LOCATION --properties "{\"location\": \"$LOCATION\", \
9191
\"properties\": { \
9292
\"osType\": \"$OS_TYPE\", \
@@ -176,4 +176,4 @@ fi
176176
capture_benchmark "${SCRIPT_NAME}_revoke_access_and_delete_disk"
177177

178178
capture_benchmark "${SCRIPT_NAME}_overall" true
179-
process_benchmarks
179+
process_benchmarks

0 commit comments

Comments
 (0)