Skip to content

Commit 79cbef8

Browse files
committed
CI: gate Windows ARM64 builds on CUDA version
1 parent abba383 commit 79cbef8

2 files changed

Lines changed: 15 additions & 5 deletions

File tree

.github/workflows/ci.yml

Lines changed: 15 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,18 @@ jobs:
4848
cuda_build_channel=$(yq '.cuda.build.channel // "stable"' ci/versions.yml)
4949
echo "cuda_build_channel=$cuda_build_channel" >> $GITHUB_OUTPUT
5050
51-
windows_arm64_supported=$(yq '.cuda.build.windows_arm64 // false' ci/versions.yml)
51+
if [[ "$cuda_build_ver" =~ ^([0-9]+)\.([0-9]+)(\.|$) ]]; then
52+
cuda_build_major="${BASH_REMATCH[1]}"
53+
cuda_build_minor="${BASH_REMATCH[2]}"
54+
else
55+
echo "Invalid CUDA build version: $cuda_build_ver" >&2
56+
exit 1
57+
fi
58+
if (( cuda_build_major > 13 || (cuda_build_major == 13 && cuda_build_minor >= 4) )); then
59+
windows_arm64_supported=true
60+
else
61+
windows_arm64_supported=false
62+
fi
5263
echo "windows_arm64_supported=$windows_arm64_supported" >> $GITHUB_OUTPUT
5364
5465
cuda_prev_build_ver=$(yq '.cuda.prev_build.version' ci/versions.yml)
@@ -327,14 +338,14 @@ jobs:
327338
cuda-channel: ${{ needs.ci-vars.outputs.CUDA_BUILD_CHANNEL }}
328339
prev-cuda-version: ${{ needs.ci-vars.outputs.CUDA_PREV_BUILD_VER }}
329340

330-
# Windows ARM64 supports only the current CUDA major because the platform is
331-
# new in CUDA 13.4; no prior-major toolkit or wheel artifacts exist.
341+
# Windows ARM64 is available starting with CUDA 13.4. Build only the current
342+
# CUDA major because no prior-major toolkit or wheel artifacts exist.
332343
build-windows-arm64:
333344
needs:
334345
- ci-vars
335346
- should-skip
336347
name: Build win-arm64, CUDA ${{ needs.ci-vars.outputs.CUDA_BUILD_VER }}
337-
if: ${{ github.repository_owner == 'nvidia' && !fromJSON(needs.should-skip.outputs.skip) && !fromJSON(needs.should-skip.outputs.doc-only) && fromJSON(needs.ci-vars.outputs.WINDOWS_ARM64_SUPPORTED) }}
348+
if: ${{ github.repository_owner == 'nvidia' && !fromJSON(needs.should-skip.outputs.skip) && !fromJSON(needs.should-skip.outputs.doc-only) && needs.ci-vars.outputs.WINDOWS_ARM64_SUPPORTED == 'true' }}
338349
secrets: inherit
339350
uses: ./.github/workflows/build-wheel.yml
340351
with:

ci/versions.yml

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,5 @@ cuda:
77
build:
88
version: "13.4.0"
99
channel: "prerelease"
10-
windows_arm64: true # Windows ARM64 toolkit support starts with CUDA 13.4
1110
prev_build:
1211
version: "12.9.1"

0 commit comments

Comments
 (0)