Skip to content

Conversation

Copy link
Contributor

Copilot AI commented Aug 5, 2025

This PR adds comprehensive support for GitHub's new windows-2025 runners across the MSQuic CI/CD pipeline, enabling builds and tests to run on the latest Windows environment.

Overview

GitHub recently introduced windows-2025 runner images, and this change updates our workflows to utilize these new runners while maintaining backward compatibility with existing windows-2022 runners.

Changes Made

Build Workflows:

  • Updated build.yml to include windows-2025 in the build matrix alongside windows-2022 for both regular and official builds
  • Enhanced stress.yml with windows-2025 configurations for stress testing builds and execution
  • Added dotnet-test.yml support for .NET interop testing on windows-2025

Workflows Preserved with windows-latest:
Following the principle of only adding windows-2025 where windows-2022 was explicitly used (and windows-2019 was previously supported), the following workflows remain unchanged with windows-latest:

  • cargo.yml - Rust/Cargo builds continue using windows-latest
  • check-clog.yml - CLOG validation remains on windows-latest
  • check-dotnet.yml - .NET validation remains on windows-latest
  • netperf.yml - Performance testing continues using windows-latest
  • plugins.yml - Plugin builds for WinDbg extensions and QuicTrace remain on windows-latest
  • wan-perf.yml - WAN performance testing continues using windows-latest

Technical Approach

The implementation adds windows-2025 as additional matrix options rather than replacing windows-2022, ensuring:

  • Zero breaking changes - existing workflows continue to work
  • Gradual migration - teams can choose which runner to use
  • Comprehensive coverage - both builds and tests supported
  • Selective adoption - only workflows previously using explicit version tags (like windows-2022) are updated, while workflows using windows-latest remain unchanged to track GitHub's default

Exceptions

Some workflows intentionally remain on windows-2022:

  • Kernel builds - windows-2025 doesn't currently support kernel driver development
  • NuGet packaging - maintains consistent artifact naming
  • Code coverage - preserves analysis consistency

Validation

All modified YAML workflow files have been validated for syntax correctness, and the changes maintain full backward compatibility while extending support to the new runner environment.

Fixes #5242.


💬 Share your feedback on Copilot coding agent for the chance to win a $200 gift card! Click here to start the survey.

Copilot AI changed the title [WIP] Add windows-2025 in github runners (build + tests) Add windows-2025 GitHub runner support for builds and tests Aug 5, 2025
Copilot AI requested a review from guhetier August 5, 2025 00:34
Copilot finished work on behalf of guhetier August 5, 2025 00:34
@guhetier
Copy link
Collaborator

guhetier commented Aug 5, 2025

Do not change occurences of "windows-latest". Only add "windows-2025" when "windows-2022" is used and windows-2019 was used before support was removed.

@guhetier
Copy link
Collaborator

@copilot address all comments on the PR

Copy link
Contributor Author

Copilot AI commented Oct 10, 2025

@copilot address all comments on the PR

All feedback addressed in commit e0e8cb8:

  • Reverted cargo.yml, check-clog.yml, check-dotnet.yml, and netperf.yml to use windows-latest
  • Updated plugins.yml (lines 20 and 45) to use windows-latest
  • Updated wan-perf.yml (lines 35 and 60) to use windows-latest

Copilot AI requested a review from guhetier October 10, 2025 23:26
Copilot finished work on behalf of guhetier October 10, 2025 23:26
@guhetier guhetier marked this pull request as ready for review November 4, 2025 21:26
@guhetier guhetier requested a review from a team as a code owner November 4, 2025 21:26
@codecov
Copy link

codecov bot commented Nov 4, 2025

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 85.50%. Comparing base (4aeadf8) to head (e0e8cb8).
⚠️ Report is 104 commits behind head on main.

Additional details and impacted files
@@            Coverage Diff             @@
##             main    #5325      +/-   ##
==========================================
- Coverage   86.58%   85.50%   -1.08%     
==========================================
  Files          59       59              
  Lines       18331    18621     +290     
==========================================
+ Hits        15872    15922      +50     
- Misses       2459     2699     +240     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

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.

Add windows-2025 in github runners (build + tests)

2 participants