From 4e0425afa2b463832960175c1352a3114da800bd Mon Sep 17 00:00:00 2001 From: Milos Kotlar Date: Thu, 2 Jul 2026 12:19:59 +0200 Subject: [PATCH 1/2] Re-add a Mono iOS simulator smoke leg Re-enable a single AllSubsets_Mono iOS simulator leg (AOT + interpreter) that builds the product with Mono and runs the libraries smoke tests, so we keep continuous signal that Mono still builds and runs on iOS. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --- ...ntime-extra-platforms-ioslikesimulator.yml | 33 +++++++++++++++++++ 1 file changed, 33 insertions(+) diff --git a/eng/pipelines/extra-platforms/runtime-extra-platforms-ioslikesimulator.yml b/eng/pipelines/extra-platforms/runtime-extra-platforms-ioslikesimulator.yml index be0b473678d5ea..771c842cd3de7b 100644 --- a/eng/pipelines/extra-platforms/runtime-extra-platforms-ioslikesimulator.yml +++ b/eng/pipelines/extra-platforms/runtime-extra-platforms-ioslikesimulator.yml @@ -10,6 +10,39 @@ parameters: jobs: +# +# iOSSimulator interp - requires AOT Compilation and Interp flags +# Build the whole product using Mono and run libraries smoke tests +# +- template: /eng/pipelines/common/platform-matrix.yml + parameters: + jobTemplate: /eng/pipelines/common/global-build-job.yml + helixQueuesTemplate: /eng/pipelines/libraries/helix-queues-setup.yml + buildConfig: Release + runtimeFlavor: mono + isExtraPlatformsBuild: ${{ parameters.isExtraPlatformsBuild }} + isiOSLikeSimulatorOnlyBuild: ${{ parameters.isiOSLikeSimulatorOnlyBuild }} + platforms: + - iossimulator_arm64 + variables: + # map dependencies variables to local variables + - name: librariesContainsChange + value: $[ stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_libraries.containsChange'] ] + - name: monoContainsChange + value: $[ stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_mono_excluding_wasm.containsChange'] ] + jobParameters: + testGroup: innerloop + nameSuffix: AllSubsets_Mono + buildArgs: -s mono+libs+host+packs+libs.tests -c $(_BuildConfig) /p:ArchiveTests=true $(_runSmokeTestsOnlyArg) /p:RunAOTCompilation=true /p:MonoForceInterpreter=true + timeoutInMinutes: 240 + # extra steps, run tests + postBuildSteps: + - template: /eng/pipelines/libraries/helix.yml + parameters: + creator: dotnet-bot + interpreter: true + testRunNamePrefixSuffix: Mono_$(_BuildConfig) + # # iOSSimulator # Build the whole product using Native AOT and run libraries tests From 065cd8a2aa29fd3f21706bb579ea48ec89c1d19b Mon Sep 17 00:00:00 2001 From: Milos Kotlar Date: Thu, 2 Jul 2026 12:36:34 +0200 Subject: [PATCH 2/2] Force smoke-only for the Mono iOS simulator leg Use /p:RunSmokeTestsOnly=true so this leg always runs the libraries smoke tests in the extra-platforms pipelines, matching its intent. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --- .../runtime-extra-platforms-ioslikesimulator.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/eng/pipelines/extra-platforms/runtime-extra-platforms-ioslikesimulator.yml b/eng/pipelines/extra-platforms/runtime-extra-platforms-ioslikesimulator.yml index 771c842cd3de7b..4bcc58ef3553f2 100644 --- a/eng/pipelines/extra-platforms/runtime-extra-platforms-ioslikesimulator.yml +++ b/eng/pipelines/extra-platforms/runtime-extra-platforms-ioslikesimulator.yml @@ -33,7 +33,7 @@ jobs: jobParameters: testGroup: innerloop nameSuffix: AllSubsets_Mono - buildArgs: -s mono+libs+host+packs+libs.tests -c $(_BuildConfig) /p:ArchiveTests=true $(_runSmokeTestsOnlyArg) /p:RunAOTCompilation=true /p:MonoForceInterpreter=true + buildArgs: -s mono+libs+host+packs+libs.tests -c $(_BuildConfig) /p:ArchiveTests=true /p:RunSmokeTestsOnly=true /p:RunAOTCompilation=true /p:MonoForceInterpreter=true timeoutInMinutes: 240 # extra steps, run tests postBuildSteps: