Skip to content

ci: add ARM64 Windows runner support to workflows#420

Merged
wmmc88 merged 40 commits intomicrosoft:mainfrom
krishnakumar4a4:364-ci-workflows-with-arm-based-runners
Aug 15, 2025
Merged

ci: add ARM64 Windows runner support to workflows#420
wmmc88 merged 40 commits intomicrosoft:mainfrom
krishnakumar4a4:364-ci-workflows-with-arm-based-runners

Conversation

@krishnakumar4a4
Copy link
Contributor

@krishnakumar4a4 krishnakumar4a4 commented Jul 9, 2025

This PR includes the following changes:

  • Added windows-11-arm64 runners alongside windows-latest for the build, test, lint, local-development-makefile, docs and codeQL workflows.
  • Updated the winget-install action to use latest winget-cli build.
  • Simplified the test and local-development workflows by removing target_triple from the matrix, as cross-compilation wouldn't work.

@krishnakumar4a4 krishnakumar4a4 linked an issue Jul 10, 2025 that may be closed by this pull request
@krishnakumar4a4 krishnakumar4a4 force-pushed the 364-ci-workflows-with-arm-based-runners branch 6 times, most recently from fb530fc to 3a4957e Compare July 15, 2025 10:11
@krishnakumar4a4 krishnakumar4a4 force-pushed the 364-ci-workflows-with-arm-based-runners branch 4 times, most recently from 7224cc8 to 7e82f63 Compare July 23, 2025 15:58
@krishnakumar4a4 krishnakumar4a4 force-pushed the 364-ci-workflows-with-arm-based-runners branch 10 times, most recently from 4802fce to 3582c77 Compare July 31, 2025 14:58
@krishnakumar4a4 krishnakumar4a4 marked this pull request as ready for review July 31, 2025 16:18
@krishnakumar4a4 krishnakumar4a4 force-pushed the 364-ci-workflows-with-arm-based-runners branch from 3582c77 to 99ced68 Compare August 5, 2025 10:09
Copilot AI review requested due to automatic review settings August 5, 2025 10:09

This comment was marked as outdated.

@krishnakumar4a4 krishnakumar4a4 force-pushed the 364-ci-workflows-with-arm-based-runners branch from 78fcfe5 to 9848ec9 Compare August 5, 2025 17:19

This comment was marked as outdated.

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Signed-off-by: Krishna Kumar Thokala <krishna.thokala2010@gmail.com>
Copy link
Collaborator

@wmmc88 wmmc88 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

im still seeing if there is something to be done about SDK. I've reached out to folks who own it and they're looking into it. rather than download the exe, i've also got winget to install it properly via --override

Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This PR adds support for ARM64 Windows runners to the CI workflows by introducing dual-architecture build matrices. The changes enable builds and tests to run on both x64 (windows-latest) and ARM64 (windows-11-arm) runners while addressing compatibility issues specific to ARM64 environments.

Key changes include:

  • Added ARM64 Windows runner support across all CI workflows (build, test, lint, docs, CodeQL, local-development-makefile)
  • Refactored GitHub Actions to use dedicated actions for winget and LLVM installation
  • Simplified matrix configurations by removing cross-compilation support in favor of native builds

Reviewed Changes

Copilot reviewed 10 out of 10 changed files in this pull request and generated 1 comment.

Show a summary per file
File Description
.github/workflows/test.yaml Added ARM64 runner matrix and removed cross-compilation target_triple
.github/workflows/local-development-makefile.yaml Added ARM64 runner support and simplified Rust toolchain installation
.github/workflows/lint.yaml Added ARM64 runner matrix with architecture-aware host configuration
.github/workflows/docs.yaml Added ARM64 runner support and removed target-specific doc generation condition
.github/workflows/codeql.yaml Updated to use new winget action and corrected host architecture value
.github/workflows/build.yaml Added ARM64 runner matrix and updated comment reference
.github/actions/winget-install/action.yaml Removed old winget installation action
.github/actions/install-winget/action.yaml New architecture-aware winget installation action
.github/actions/install-wdk/action.yml Enhanced with better error handling and SDK installation
.github/actions/install-llvm/action.yml New dedicated LLVM installation action with error handling

Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.

Copy link
Collaborator

@wmmc88 wmmc88 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Just one last issue which would mask failures (that ive already previously seen in CI runs. After this i think its good to go

@wmmc88 wmmc88 added this pull request to the merge queue Aug 14, 2025
github-merge-queue bot pushed a commit that referenced this pull request Aug 14, 2025
Signed-off-by: Krishna Kumar Thokala <krishna.thokala2010@gmail.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Gurinder Singh <frederick.the.fool@gmail.com>
@github-merge-queue github-merge-queue bot removed this pull request from the merge queue due to failed status checks Aug 15, 2025
@wmmc88 wmmc88 merged commit 4992b46 into microsoft:main Aug 15, 2025
229 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

CI workflows with ARM-based runners

5 participants