Repository navigation
Conversation
On macOS the MAUI cases in cli.Tests.ps1 build three Release apps, for Android, iOS and Mac Catalyst. That takes 8 to 10 of the macOS leg's 13 to 15 integration test minutes, and the macOS leg is the slowest leg in the build workflow. The cases move unchanged to cli-maui.Tests.ps1. The macOS leg skips them, and a new job on another Mac packs the six packages they use and runs them. The other legs still run the Android case. The new job's packages aren't the ones the macOS leg publishes. But CI_PUBLISHING_BUILD only adds the other desktop platforms' native libraries and sentry-cli binaries, which MAUI apps don't use. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #5797 +/- ##
=======================================
Coverage 76.13% 76.13%
=======================================
Files 528 528
Lines 19579 19579
Branches 3829 3829
=======================================
Hits 14906 14906
Misses 3791 3791
Partials 882 882 ☔ View full report in Codecov by Harness. 🚀 New features to boost your workflow:
|
dotnet pack with a build failed with NU5026 on Sentry.Maui's Windows target, looking for a .pri file that isn't generated on macOS. The build legs build first and pack with --no-build, so this job does too. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
On macOS, the MAUI cases in
cli.Tests.ps1are the longest part of the integration tests. They build three Release apps and check what sentry-cli uploads for each:With the other open CI PRs applied, the macOS leg is the slowest leg in the build workflow at 32 to 37 minutes, so those 8 to 10 minutes are on the critical path.
This PR:
MAUI (<framework>)block unchanged fromcli.Tests.ps1to a newcli-maui.Tests.ps1, with the same header,SKIP_MAUI_TESTSistrue, which the build legs set only on macOS,MAUI integration test (macos)job that packs the six packages the block registers and runscli-maui.Tests.ps1with the same github-workflows action.The Windows and Linux legs keep running the Android case, because it covers host-specific parts like the sentry-cli binary and
Sentry.targets'Execcalls.The new job tests packages it builds itself, not the ones the macOS leg publishes. For these cases that's equivalent. The macOS leg builds with
CI_PUBLISHING_BUILD=true, which only adds the other desktop platforms' native libraries and sentry-cli binaries to theSentrypackage. MAUI apps don't use the native libraries, and a macOS arm64 build always includes the Darwin arm64 sentry-cli.Checked locally:
cli.Tests.ps1and 3 incli-maui.Tests.ps1, and skips the 3 MAUI cases whenSKIP_MAUI_TESTS=true.main.On release branches the new job builds the Cocoa SDK from source, like the macOS leg does.
The first run's MAUI job failed in pack with NU5026. Packing
Sentry.Mauiwhile building it on macOS looks for its Windows target's.prifile, which macOS doesn't generate. The job now builds first and packs with--no-build, as the build legs do.Measured on the second run, against 3 runs from the same evening without this PR:
MAUI integration test (macos)jobThe 51.1 was a run whose Build step took 23.6 minutes, against 14.5 and 17.0 in the other two.
So the 3 MAUI cases moved from the macOS leg to the new job, and every other case still runs in the leg. The new job builds for 4.0 minutes, packs in 0.2 and finishes well before the macOS leg.
#skip-changelog