Skip to content

[infra][apple-mobile] Migrate MacCatalyst and iOS/tvOS simulator jobs to osx.14.arm64.open and osx.15.amd64.open queues #113313

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

Merged
merged 12 commits into from
Apr 14, 2025

Conversation

matouskozak
Copy link
Member

@matouskozak matouskozak commented Mar 10, 2025

Currently, we are using osx.1200.amd64.open and osx.1200.arm64.open for dotnet/runtime Apple simulator and MacCatalyst jobs. Since macOS 12 is after its EOL, we should migrate to queues with newer macOS version.

iOSSimulator, tvOSSimulator, MacCatalyst pipelines are migrated to:

  • osx.15.amd64.open
  • osx.14.arm64.open (until osx.15.arm64.open has enough machines)

Newly failing test scenarios

Some new failures were discovered during the migration. The tests were disabled and tracking issues were open to monitor progress for enablement.

System.Net.Sockets.Tests.SocketOptionNameTest.MulticastInterface_Set_AnyInterface_Succeeds

System.IO.IsolatedStorage

System.IO. MemoryMappedFiles

System.Net.Sockets.Tests.SendTo_.*.Datagram_UDP_AccessDenied_Throws_DoesNotBind


#113273

Copy link
Contributor

Tagging subscribers to this area: @akoeplinger, @matouskozak
See info in area-owners.md if you want to be subscribed.

@matouskozak matouskozak changed the title [infra][apple-mobile] Migrate Apple mobile jobs to `osx.15.[amd/arm64].open queues [infra][apple-mobile] Migrate Apple mobile jobs to osx.15.[amd/arm64].open queues Mar 10, 2025
@dotnet dotnet deleted a comment from azure-pipelines bot Apr 9, 2025
@dotnet dotnet deleted a comment from azure-pipelines bot Apr 9, 2025
@dotnet dotnet deleted a comment from azure-pipelines bot Apr 9, 2025
@matouskozak matouskozak changed the title [infra][apple-mobile] Migrate Apple mobile jobs to osx.15.[amd/arm64].open queues [infra][apple-mobile] Migrate MacCatalyst and iOS/tvOS simulator jobs to osx.15.[amd/arm64].open queues Apr 9, 2025
@matouskozak
Copy link
Member Author

/azp run runtime-extra-platforms

Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@matouskozak matouskozak marked this pull request as ready for review April 10, 2025 08:00
@Copilot Copilot AI review requested due to automatic review settings April 10, 2025 08:00
Copy link
Contributor

@Copilot 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.

Copilot reviewed 9 out of 9 changed files in this pull request and generated no comments.

@matouskozak matouskozak changed the title [infra][apple-mobile] Migrate MacCatalyst and iOS/tvOS simulator jobs to osx.15.[amd/arm64].open queues [infra][apple-mobile] Migrate MacCatalyst and iOS/tvOS simulator jobs to osx.14.arm64.open and osx.15.amd64.open queues Apr 10, 2025
Copy link
Member

@ivanpovazan ivanpovazan left a comment

Choose a reason for hiding this comment

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

LGTM!

# don't run tests on arm64 PRs until we can get significantly more devices
- ${{ if eq(variables['isRollingBuild'], true) }}:
- iossimulator_arm64
- iossimulator_arm64
Copy link
Member

Choose a reason for hiding this comment

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

Just for clarification: Are we sure we now have the right capacity?

Copy link
Member Author

Choose a reason for hiding this comment

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

It wasn't timing out on this PR, so I thought we can try it on main and see how it goes, we can always disable again in the future.

Copy link
Member

Choose a reason for hiding this comment

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

I like the approach. I can't remember how many arm64 machines we had back when it was disabled, but it's a safe bet we had way less.

yield return new object[] { MemoryMappedFileAccess.ReadExecute, MemoryMappedFileAccess.CopyOnWrite };
if (PlatformDetection.IsNotMacCatalyst)
{
// https://github.com/dotnet/runtime/issues/114403
Copy link
Member

Choose a reason for hiding this comment

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

nit:
Maybe moving the comment above the if, and adding "Skipped on MacCatalyst..." makes it clearer. I don't have strong opinion just find it weird to read.
Additionally, in the mentioned issue it makes sense to note that the test got disabled in this PR so it is easier to track down when we fix the mentioned issue.

Copy link
Member Author

Choose a reason for hiding this comment

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

nit: Maybe moving the comment above the if, and adding "Skipped on MacCatalyst..." makes it clearer. I don't have strong opinion just find it weird to read.

Sure, I'll move it up.

Additionally, in the mentioned issue it makes sense to note that the test got disabled in this PR so it is easier to track down when we fix the mentioned issue.

I'll mark all issues with disabled-test label after merging this PR.

@matouskozak matouskozak merged commit 159f40e into dotnet:main Apr 14, 2025
148 of 151 checks passed
@matouskozak
Copy link
Member Author

/backport to release/9.0-staging

Copy link
Contributor

Started backporting to release/9.0-staging: https://github.com/dotnet/runtime/actions/runs/14439630901

@matouskozak
Copy link
Member Author

/backport to release/8.0-staging

Copy link
Contributor

Started backporting to release/8.0-staging: https://github.com/dotnet/runtime/actions/runs/14450187705

Copy link
Contributor

@matouskozak backporting to "release/8.0-staging" failed, the patch most likely resulted in conflicts:

$ git am --3way --empty=keep --ignore-whitespace --keep-non-patch changes.patch

Applying: migrate apple mobile jobs to osx.15 queue
Applying: use osx 14 for arm64 and enable simulators
Applying: Revert "use osx 14 for arm64 and enable simulators"
Applying: use osx.14.arm64 queues
Applying: enable arm64 simulators and maccatalyst on PRs
Applying: dis MulticastInterface_Set_AnyInterface_Succeeds
Using index info to reconstruct a base tree...
M	src/libraries/System.Net.Sockets/tests/FunctionalTests/SocketOptionNameTest.cs
Falling back to patching base and 3-way merge...
Auto-merging src/libraries/System.Net.Sockets/tests/FunctionalTests/SocketOptionNameTest.cs
CONFLICT (content): Merge conflict in src/libraries/System.Net.Sockets/tests/FunctionalTests/SocketOptionNameTest.cs
error: Failed to merge in the changes.
hint: Use 'git am --show-current-patch=diff' to see the failed patch
hint: When you have resolved this problem, run "git am --continue".
hint: If you prefer to skip this patch, run "git am --skip" instead.
hint: To restore the original branch and stop patching, run "git am --abort".
hint: Disable this message with "git config set advice.mergeConflict false"
Patch failed at 0006 dis MulticastInterface_Set_AnyInterface_Succeeds
Error: The process '/usr/bin/git' failed with exit code 128

Please backport manually!

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants