-
Notifications
You must be signed in to change notification settings - Fork 1.9k
[ci] Build and run on ARM platforms for iOS UITests and device tests #33474
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
There was a problem hiding this 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 addresses a build configuration issue in the iOS UITest infrastructure by ensuring that both simulator architectures (x64 and arm64) are built when running on Apple Silicon machines. This fixes failures where the test runner couldn't locate the correct .app bundle for UI tests.
Changes:
- Added runtime identifier configuration for iOS simulator builds on arm64 host machines to include both x64 and arm64 architectures
|
/azp run maui-pr-uitests |
|
Azure Pipelines successfully started running 1 pipeline(s). |
|
/azp run maui-pr-uitests |
|
Azure Pipelines successfully started running 1 pipeline(s). |
|
/azp run maui-pr-uitests |
|
Azure Pipelines successfully started running 1 pipeline(s). |
|
/azp run maui-pr-devicetests |
|
Azure Pipelines successfully started running 1 pipeline(s). |
…l binary lookup - Remove RuntimeIdentifiers for iOS and macCatalyst from csproj (was applying to all builds) - Add multi-RID build logic in uitests-apphost task for ARM64 CI agents only - Update devices-shared.cake to prefer universal binary in parent directory - Fixes code signing issue where RID-specific apps had stale signatures
|
/azp run maui-pr-uitests |
|
Azure Pipelines successfully started running 1 pipeline(s). |
- Move RuntimeIdentifiers back to csproj with CI condition - Use '' == 'true' or '' == 'true' pattern (matches Core.DeviceTests) - Remove cake-based RuntimeIdentifiers logic (no longer needed) - Fixes issue where platform argument wasn't being passed to cake
|
/azp run maui-pr-uitests |
|
Azure Pipelines successfully started running 1 pipeline(s). |
Description of Change
Try fix issues where it can t find the correct .app to run the uitests
https://dev.azure.com/dnceng-public/public/_build/results?buildId=1249376&view=results
This pull request improves support for ARM64 architecture in both CI pipelines and test project configurations. The changes ensure that device and UI tests run on ARM64 agents and expand runtime identifiers for better platform coverage.
CI Pipeline Updates for ARM64:
Agent.OSArchitecture -equals ARM64to theMAUIpool in bothci-device-tests.ymlandci-uitests.yml, ensuring these pipelines run on ARM64 agents. [1] [2] [3]Test Project Runtime Identifier Enhancements:
Controls.TestCases.HostApp.csprojto always include bothmaccatalyst-x64andmaccatalyst-arm64runtime identifiers for Mac Catalyst targets, regardless of host architecture. Also addediossimulator-x64andiossimulator-arm64for iOS targets, improving test coverage across architectures.