From 21e5c310a6c03b80b9303921fa7818260e8b4716 Mon Sep 17 00:00:00 2001 From: Matous Kozak Date: Wed, 3 Dec 2025 12:44:37 +0100 Subject: [PATCH 1/9] fix Directory.Build imports --- src/tests/FunctionalTests/iOS/Device/Directory.Build.props | 3 ++- src/tests/FunctionalTests/iOS/Device/Directory.Build.targets | 2 +- .../FunctionalTests/tvOS/Device/AOT/Directory.Build.props | 2 +- .../FunctionalTests/tvOS/Device/AOT/Directory.Build.targets | 2 +- 4 files changed, 5 insertions(+), 4 deletions(-) diff --git a/src/tests/FunctionalTests/iOS/Device/Directory.Build.props b/src/tests/FunctionalTests/iOS/Device/Directory.Build.props index d9788f8f84ee4f..820aca418a7a43 100644 --- a/src/tests/FunctionalTests/iOS/Device/Directory.Build.props +++ b/src/tests/FunctionalTests/iOS/Device/Directory.Build.props @@ -4,7 +4,8 @@ false true true + true - + \ No newline at end of file diff --git a/src/tests/FunctionalTests/iOS/Device/Directory.Build.targets b/src/tests/FunctionalTests/iOS/Device/Directory.Build.targets index 2240a7ad27f455..a3785048c985f0 100644 --- a/src/tests/FunctionalTests/iOS/Device/Directory.Build.targets +++ b/src/tests/FunctionalTests/iOS/Device/Directory.Build.targets @@ -1,3 +1,3 @@ - + \ No newline at end of file diff --git a/src/tests/FunctionalTests/tvOS/Device/AOT/Directory.Build.props b/src/tests/FunctionalTests/tvOS/Device/AOT/Directory.Build.props index 27d4e278a800c4..53c4e21e46e4d2 100644 --- a/src/tests/FunctionalTests/tvOS/Device/AOT/Directory.Build.props +++ b/src/tests/FunctionalTests/tvOS/Device/AOT/Directory.Build.props @@ -6,5 +6,5 @@ true - + \ No newline at end of file diff --git a/src/tests/FunctionalTests/tvOS/Device/AOT/Directory.Build.targets b/src/tests/FunctionalTests/tvOS/Device/AOT/Directory.Build.targets index d8ef266b5da4ec..acedbdf3235f18 100644 --- a/src/tests/FunctionalTests/tvOS/Device/AOT/Directory.Build.targets +++ b/src/tests/FunctionalTests/tvOS/Device/AOT/Directory.Build.targets @@ -1,3 +1,3 @@ - + \ No newline at end of file From afd41c814b475386be11149fa5c48801e1aa9147 Mon Sep 17 00:00:00 2001 From: Matous Kozak Date: Wed, 3 Dec 2025 16:26:59 +0100 Subject: [PATCH 2/9] disable linker optimizations --- src/mono/msbuild/apple/build/AppleBuild.targets | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/mono/msbuild/apple/build/AppleBuild.targets b/src/mono/msbuild/apple/build/AppleBuild.targets index 9f987572457cb9..144a8b69d95369 100644 --- a/src/mono/msbuild/apple/build/AppleBuild.targets +++ b/src/mono/msbuild/apple/build/AppleBuild.targets @@ -296,6 +296,10 @@ + + + From a2c1fd3ede4a96860d68f39acbfb93954e742eee Mon Sep 17 00:00:00 2001 From: Matous Kozak Date: Wed, 3 Dec 2025 16:32:06 +0100 Subject: [PATCH 3/9] Re-enable smoke tests + rename --- eng/pipelines/runtime.yml | 37 ++++++++++++++++++------------------- 1 file changed, 18 insertions(+), 19 deletions(-) diff --git a/eng/pipelines/runtime.yml b/eng/pipelines/runtime.yml index 7184087e80f660..cd020d27f6b14a 100644 --- a/eng/pipelines/runtime.yml +++ b/eng/pipelines/runtime.yml @@ -944,7 +944,7 @@ extends: value: $[ stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_mono_excluding_wasm.containsChange'] ] jobParameters: testGroup: innerloop - nameSuffix: AllSubsets_Mono + nameSuffix: AllSubsets_Mono_Smoke buildArgs: -s mono+libs+libs.tests+host+packs -c $(_BuildConfig) /p:ArchiveTests=true /p:RunSmokeTestsOnly=true /p:EnableAdditionalTimezoneChecks=true timeoutInMinutes: 120 condition: >- @@ -986,7 +986,7 @@ extends: value: $[ stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_coreclr.containsChange'] ] jobParameters: testGroup: innerloop - nameSuffix: AllSubsets_CoreCLR + nameSuffix: AllSubsets_CoreCLR_Smoke buildArgs: -s clr.runtime+clr.alljits+clr.corelib+clr.nativecorelib+clr.tools+clr.packages+libs+libs.tests+host+packs -c $(_BuildConfig) /p:ArchiveTests=true /p:RunSmokeTestsOnly=true timeoutInMinutes: 180 condition: >- @@ -1030,7 +1030,7 @@ extends: value: $[ stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_tools_illink.containsChange'] ] jobParameters: testGroup: innerloop - nameSuffix: AllSubsets_Mono + nameSuffix: AllSubsets_Mono_Smoke buildArgs: -s mono+libs+libs.tests+host+packs -c $(_BuildConfig) /p:ArchiveTests=true /p:DevTeamProvisioning=- /p:RunAOTCompilation=true /p:RunSmokeTestsOnly=true /p:BuildTestsOnHelix=true /p:EnableAdditionalTimezoneChecks=true /p:UsePortableRuntimePack=false /p:EnableAggressiveTrimming=true timeoutInMinutes: 120 condition: >- @@ -1041,19 +1041,18 @@ extends: eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_tools_illink.containsChange'], true), eq(variables['isRollingBuild'], true)) # extra steps, run tests - # Disable tests on ios/tvos - mono - https://github.com/dotnet/runtime/issues/121967 - # postBuildSteps: - # - template: /eng/pipelines/libraries/helix.yml - # parameters: - # creator: dotnet-bot - # testRunNamePrefixSuffix: Mono_$(_BuildConfig) - # extraHelixArguments: /p:NeedsToBuildAppsOnHelix=true - # condition: >- - # or( - # eq(variables['librariesContainsChange'], true), - # eq(variables['monoContainsChange'], true), - # eq(variables['illinkContainsChange'], true), - # eq(variables['isRollingBuild'], true)) + postBuildSteps: + - template: /eng/pipelines/libraries/helix.yml + parameters: + creator: dotnet-bot + testRunNamePrefixSuffix: Mono_$(_BuildConfig) + extraHelixArguments: /p:NeedsToBuildAppsOnHelix=true + condition: >- + or( + eq(variables['librariesContainsChange'], true), + eq(variables['monoContainsChange'], true), + eq(variables['illinkContainsChange'], true), + eq(variables['isRollingBuild'], true)) # # Build the whole product using CoreCLR and run functional tests @@ -1076,7 +1075,7 @@ extends: value: $[ stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_tools_illink.containsChange'] ] jobParameters: testGroup: innerloop - nameSuffix: AllSubsets_CoreCLR + nameSuffix: AllSubsets_CoreCLR_Smoke buildArgs: -s clr+clr.runtime+libs+packs+libs.tests -c $(_BuildConfig) /p:ArchiveTests=true /p:DevTeamProvisioning=- /p:RunAOTCompilation=false /p:UseMonoRuntime=false /p:MonoForceInterpreter=false /p:BuildTestsOnHelix=false /p:UseNativeAOTRuntime=false /p:RunSmokeTestsOnly=true timeoutInMinutes: 120 condition: >- @@ -1119,7 +1118,7 @@ extends: value: $[ stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_coreclr.containsChange'] ] jobParameters: testGroup: innerloop - nameSuffix: AllSubsets_NativeAOT + nameSuffix: AllSubsets_NativeAOT_Smoke buildArgs: --cross -s clr.alljits+clr.tools+clr.nativeaotruntime+clr.nativeaotlibs+libs+libs.tests -c $(_BuildConfig) /p:ArchiveTests=true /p:RunSmokeTestsOnly=true /p:DevTeamProvisioning=- /p:BuildTestsOnHelix=true /p:UseNativeAOTRuntime=true /p:RunAOTCompilation=false /p:ContinuousIntegrationBuild=true timeoutInMinutes: 180 condition: >- @@ -1162,7 +1161,7 @@ extends: value: $[ stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_mono_excluding_wasm.containsChange'] ] jobParameters: testGroup: innerloop - nameSuffix: AllSubsets_Mono + nameSuffix: AllSubsets_Mono_Smoke buildArgs: -s mono+libs+host+packs+libs.tests -c $(_BuildConfig) /p:ArchiveTests=true /p:RunSmokeTestsOnly=true /p:DevTeamProvisioning=adhoc /p:RunAOTCompilation=true /p:MonoForceInterpreter=true timeoutInMinutes: 180 condition: >- From 041da5bb8f367f43c4e8dcafa82a00c742bbadc5 Mon Sep 17 00:00:00 2001 From: Matous Kozak Date: Wed, 3 Dec 2025 16:43:08 +0100 Subject: [PATCH 4/9] fully build smoke test on azdo build images --- eng/pipelines/runtime.yml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/eng/pipelines/runtime.yml b/eng/pipelines/runtime.yml index cd020d27f6b14a..0676add11af78d 100644 --- a/eng/pipelines/runtime.yml +++ b/eng/pipelines/runtime.yml @@ -1031,7 +1031,7 @@ extends: jobParameters: testGroup: innerloop nameSuffix: AllSubsets_Mono_Smoke - buildArgs: -s mono+libs+libs.tests+host+packs -c $(_BuildConfig) /p:ArchiveTests=true /p:DevTeamProvisioning=- /p:RunAOTCompilation=true /p:RunSmokeTestsOnly=true /p:BuildTestsOnHelix=true /p:EnableAdditionalTimezoneChecks=true /p:UsePortableRuntimePack=false /p:EnableAggressiveTrimming=true + buildArgs: -s mono+libs+libs.tests+host+packs -c $(_BuildConfig) /p:ArchiveTests=true /p:DevTeamProvisioning=- /p:RunAOTCompilation=true /p:RunSmokeTestsOnly=true /p:EnableAdditionalTimezoneChecks=true /p:UsePortableRuntimePack=false /p:EnableAggressiveTrimming=true timeoutInMinutes: 120 condition: >- or( @@ -1046,7 +1046,6 @@ extends: parameters: creator: dotnet-bot testRunNamePrefixSuffix: Mono_$(_BuildConfig) - extraHelixArguments: /p:NeedsToBuildAppsOnHelix=true condition: >- or( eq(variables['librariesContainsChange'], true), From ff34e76ed992fface0c1f3474e0d3b73d3fd8479 Mon Sep 17 00:00:00 2001 From: Matous Kozak Date: Wed, 3 Dec 2025 18:06:34 +0100 Subject: [PATCH 5/9] remove IsFunctionalTest --- src/tests/FunctionalTests/iOS/Device/Directory.Build.props | 1 - 1 file changed, 1 deletion(-) diff --git a/src/tests/FunctionalTests/iOS/Device/Directory.Build.props b/src/tests/FunctionalTests/iOS/Device/Directory.Build.props index 820aca418a7a43..680be4c0f552e9 100644 --- a/src/tests/FunctionalTests/iOS/Device/Directory.Build.props +++ b/src/tests/FunctionalTests/iOS/Device/Directory.Build.props @@ -4,7 +4,6 @@ false true true - true From 5baac9ebe84b60a31daa395ee2f443bdd5869c76 Mon Sep 17 00:00:00 2001 From: Matous Kozak Date: Wed, 3 Dec 2025 22:05:47 +0100 Subject: [PATCH 6/9] adjust conditions --- src/libraries/sendtohelix-mobile.targets | 6 +++--- src/mono/msbuild/apple/build/AppleBuild.targets | 4 ++-- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/src/libraries/sendtohelix-mobile.targets b/src/libraries/sendtohelix-mobile.targets index 5ce9f89c9ed56e..779c35019d2a74 100644 --- a/src/libraries/sendtohelix-mobile.targets +++ b/src/libraries/sendtohelix-mobile.targets @@ -86,7 +86,7 @@ - $(AppleTestTarget) $(_workItemTimeout) @@ -94,9 +94,9 @@ - + Exclude="$([System.IO.Directory]::GetFiles('$(TestArchiveTestsRoot)', 'xharness-app-payload*', System.IO.SearchOption.AllDirectories))"> $(AppleTestTarget) $(_workItemTimeout) $(_XHarnessAppleCustomCommand) diff --git a/src/mono/msbuild/apple/build/AppleBuild.targets b/src/mono/msbuild/apple/build/AppleBuild.targets index 144a8b69d95369..1c3734f3d82655 100644 --- a/src/mono/msbuild/apple/build/AppleBuild.targets +++ b/src/mono/msbuild/apple/build/AppleBuild.targets @@ -298,8 +298,8 @@ - - + + From b3ee02a6e7b43c6bd333c30158d75d0e75d17d26 Mon Sep 17 00:00:00 2001 From: Matous Kozak Date: Thu, 4 Dec 2025 07:16:01 +0100 Subject: [PATCH 7/9] build test app for runonly --- src/libraries/sendtohelix-mobile.targets | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/libraries/sendtohelix-mobile.targets b/src/libraries/sendtohelix-mobile.targets index 779c35019d2a74..f45a28ca50dc30 100644 --- a/src/libraries/sendtohelix-mobile.targets +++ b/src/libraries/sendtohelix-mobile.targets @@ -109,6 +109,7 @@ 42 $(AppleTestTarget) + $(_XHarnessAppleCustomCommand) @@ -120,6 +121,7 @@ 42 $(AppleTestTarget) + $(_XHarnessAppleCustomCommand) From b0d119b8c6c2ffa1ba414e78aac532edfd15ec51 Mon Sep 17 00:00:00 2001 From: Matous Kozak Date: Thu, 4 Dec 2025 09:23:44 +0100 Subject: [PATCH 8/9] add more renames --- .../extra-platforms/runtime-extra-platforms-ioslike.yml | 4 ++-- .../runtime-extra-platforms-ioslikesimulator.yml | 2 +- .../extra-platforms/runtime-extra-platforms-maccatalyst.yml | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/eng/pipelines/extra-platforms/runtime-extra-platforms-ioslike.yml b/eng/pipelines/extra-platforms/runtime-extra-platforms-ioslike.yml index 15fe4a15a662c6..5173ad7bf61047 100644 --- a/eng/pipelines/extra-platforms/runtime-extra-platforms-ioslike.yml +++ b/eng/pipelines/extra-platforms/runtime-extra-platforms-ioslike.yml @@ -119,7 +119,7 @@ jobs: value: $[ stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_coreclr.containsChange'] ] jobParameters: testGroup: innerloop - nameSuffix: AllSubsets_NativeAOT + nameSuffix: AllSubsets_NativeAOT_Smoke buildArgs: --cross -s clr.alljits+clr.tools+clr.nativeaotruntime+clr.nativeaotlibs+libs+libs.tests -c $(_BuildConfig) /p:ArchiveTests=true /p:RunSmokeTestsOnly=true /p:DevTeamProvisioning=- /p:BuildTestsOnHelix=true /p:UseNativeAOTRuntime=true /p:RunAOTCompilation=false /p:ContinuousIntegrationBuild=true timeoutInMinutes: 180 # extra steps, run tests @@ -190,7 +190,7 @@ jobs: value: $[ stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_tools_illink.containsChange'] ] jobParameters: testGroup: innerloop - nameSuffix: AllSubsets_CoreCLR + nameSuffix: AllSubsets_CoreCLR_Smoke buildArgs: -s clr+clr.runtime+libs+packs+libs.tests -c $(_BuildConfig) /p:ArchiveTests=true /p:DevTeamProvisioning=- /p:RunAOTCompilation=false /p:UseMonoRuntime=false /p:MonoForceInterpreter=false /p:BuildTestsOnHelix=false /p:UseNativeAOTRuntime=false /p:RunSmokeTestsOnly=true timeoutInMinutes: 120 # extra steps, run tests diff --git a/eng/pipelines/extra-platforms/runtime-extra-platforms-ioslikesimulator.yml b/eng/pipelines/extra-platforms/runtime-extra-platforms-ioslikesimulator.yml index 28285b8abb47c5..b85331111d982a 100644 --- a/eng/pipelines/extra-platforms/runtime-extra-platforms-ioslikesimulator.yml +++ b/eng/pipelines/extra-platforms/runtime-extra-platforms-ioslikesimulator.yml @@ -157,7 +157,7 @@ jobs: value: $[ stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_tools_illink.containsChange'] ] jobParameters: testGroup: innerloop - nameSuffix: AllSubsets_CoreCLR + nameSuffix: AllSubsets_CoreCLR_Smoke buildArgs: -s clr+clr.runtime+libs+packs+libs.tests -c $(_BuildConfig) /p:ArchiveTests=true /p:DevTeamProvisioning=- /p:RunAOTCompilation=false /p:UseMonoRuntime=false /p:MonoForceInterpreter=false /p:RunSmokeTestsOnly=true timeoutInMinutes: 120 # extra steps, run tests diff --git a/eng/pipelines/extra-platforms/runtime-extra-platforms-maccatalyst.yml b/eng/pipelines/extra-platforms/runtime-extra-platforms-maccatalyst.yml index efee3d9d7279de..8a66041dbd1c3e 100644 --- a/eng/pipelines/extra-platforms/runtime-extra-platforms-maccatalyst.yml +++ b/eng/pipelines/extra-platforms/runtime-extra-platforms-maccatalyst.yml @@ -226,7 +226,7 @@ jobs: value: $[ stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_tools_illink.containsChange'] ] jobParameters: testGroup: innerloop - nameSuffix: AllSubsets_CoreCLR + nameSuffix: AllSubsets_CoreCLR_Smoke buildArgs: -s clr+clr.runtime+libs+packs+libs.tests -c $(_BuildConfig) /p:ArchiveTests=true /p:DevTeamProvisioning=- /p:RunAOTCompilation=false /p:UseMonoRuntime=false /p:MonoForceInterpreter=false /p:BuildTestsOnHelix=false /p:UseNativeAOTRuntime=false /p:RunSmokeTestsOnly=true timeoutInMinutes: 120 # extra steps, run tests From eda170a8b7551102c7ceed5043a48f6633ad78e0 Mon Sep 17 00:00:00 2001 From: Matous Kozak Date: Thu, 4 Dec 2025 15:02:07 +0100 Subject: [PATCH 9/9] add comment --- eng/pipelines/runtime.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/eng/pipelines/runtime.yml b/eng/pipelines/runtime.yml index 0676add11af78d..54886c99b81f6d 100644 --- a/eng/pipelines/runtime.yml +++ b/eng/pipelines/runtime.yml @@ -1041,6 +1041,7 @@ extends: eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_tools_illink.containsChange'], true), eq(variables['isRollingBuild'], true)) # extra steps, run tests + # TODO: Re-enable build on helix https://github.com/dotnet/runtime/issues/121967 postBuildSteps: - template: /eng/pipelines/libraries/helix.yml parameters: