Skip to content

ci: check the workload and setup fixes on top of #5803 (do not merge) - #5804

Closed
ric-oliv wants to merge 17 commits into
mainfrom
ci/check-windows-setup-fixes
Closed

ric-oliv wants to merge 17 commits into
mainfrom
ci/check-windows-setup-fixes

Conversation

@ric-oliv

@ric-oliv ric-oliv commented Oct 25, 2026 •

Copy link
Copy Markdown
Member

Throwaway draft to check setup fixes on top of #5803. I'll close it after the runs and fold each fix into the PR it belongs to.

  1. The integration test jobs install only the workloads their projects need. They had no solution filter, so the environment action restored the workloads for all of Sentry.slnx: 184 s in the new win-arm64 job, which builds 5 projects. First run: 55 s, and macOS Setup Environment went from 246 s to 72 s.
  2. The Windows Samples job uses the fast drive step. It was the only Windows job without it. First run: restoring the MAUI sample went from 180 s to 34 s.
  3. Every job restores only the workloads it needs. The environment action now requires the solution filters or project files the job builds, and fails without them. Jobs that build everything pass Sentry.slnx. CodeQL, format-code and verify-api no longer run a second, unfiltered workload restore, and the Playwright job restores the workloads of its test project only.

What I'm checking: every job that calls the environment action still builds, Setup Environment in each of them, and the same test results as #5803, for example 69 passed and 35 skipped in the win-arm64 integration tests.

#skip-changelog

ric-oliv and others added 16 commits October 25, 2026 00:01
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Taking the app samples out of the platform solution filters meant msbuild.exe no longer built the MAUI sample, or any other Android or Windows app. The Samples job still builds it with the .NET CLI. The MSBuild job finishes well before the slowest build leg, so it builds the sample again, after the solution filter.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The win-arm64 runner has 4 cores. With the unit tests in the background next to the integration tests, Pester took 876.6 s on the combined draft, against 684 s with the unit tests in the foreground, and aot.Tests went from 31 s to 2.6 minutes. That made the leg the slowest check, at 30 to 32 minutes.

The macOS MAUI job becomes a matrix with a win-arm64 entry. It builds and packs only the packages the integration tests use, then runs all of them, so the leg keeps the build, the unit tests and the coverage upload.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Without a solution filter, the environment action restores the workloads for every project in Sentry.slnx. That took 184 s in the win-arm64 integration test job, which only builds 5 projects. The action now takes the job's project files, and skips the Android test app's workloads for them, as it does for a solution filter without the test app.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…samples job

The Samples job on win-x64 still installed workloads as MSI packages under Program Files, 163 s, and restored the MAUI sample from the NuGet cache in the user profile, 180 s. It now uses the same drive step as the other Windows jobs.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@codecov

codecov Bot commented Oct 25, 2026 •

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 76.12%. Comparing base (b41b96c) to head (a248df6).

Additional details and impacted files
@@            Coverage Diff             @@
##             main    #5804      +/-   ##
==========================================
- Coverage   76.13%   76.12%   -0.02%     
==========================================
  Files         528      528              
  Lines       19579    19579              
  Branches     3829     3829              
==========================================
- Hits        14906    14904       -2     
- Misses       3791     3792       +1     
- Partials      882      883       +1     

☔ View full report in Codecov by Harness.
📢 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.

The environment action now requires the solution filters or project files the job builds, and installs only their workloads. Jobs that build everything pass Sentry.slnx. Before, every job without a filter restored the workloads for all of Sentry.slnx, and CodeQL, format-code and verify-api ran a second, unfiltered workload restore after the action. The Playwright job restores the workloads of its test project only.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@ric-oliv ric-oliv changed the title ci: check two Windows setup fixes on top of #5803 (do not merge) ci: check the workload and setup fixes on top of #5803 (do not merge) Oct 25, 2026
@ric-oliv ric-oliv closed this Oct 25, 2026
@ric-oliv
ric-oliv deleted the ci/check-windows-setup-fixes branch October 25, 2026 09:17
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.

1 participant