From 4f92ddea2d94891b879e823ef90432f78806d9b4 Mon Sep 17 00:00:00 2001 From: Sven Boemer Date: Tue, 31 Jan 2023 19:21:41 +0000 Subject: [PATCH 01/15] Run nativeaot tests in helix --- .../build-runtime-tests-and-send-to-helix.yml | 7 ++-- eng/pipelines/runtime.yml | 37 +++++++++++++++++++ 2 files changed, 41 insertions(+), 3 deletions(-) diff --git a/eng/pipelines/common/templates/runtimes/build-runtime-tests-and-send-to-helix.yml b/eng/pipelines/common/templates/runtimes/build-runtime-tests-and-send-to-helix.yml index d5c2a0df8296f4..bb3007c06cbfc0 100644 --- a/eng/pipelines/common/templates/runtimes/build-runtime-tests-and-send-to-helix.yml +++ b/eng/pipelines/common/templates/runtimes/build-runtime-tests-and-send-to-helix.yml @@ -2,7 +2,7 @@ parameters: buildConfig: '' osSubgroup: '' container: '' - testGroup: '' + testFilter: '' crossBuild: false readyToRun: false liveLibrariesBuildConfig: '' @@ -12,6 +12,7 @@ parameters: runInUnloadableContext: false runtimeFlavor: 'mono' runtimeVariant: 'monointerpreter' + testBuildMode: '' variables: {} pool: '' dependsOn: [] @@ -26,11 +27,11 @@ parameters: steps: - ${{ if eq(parameters.runtimeFlavor, 'mono') }}: - - script: $(Build.SourcesDirectory)/src/tests/build$(scriptExt) /p:RuntimeVariant=${{ parameters.runtimeVariant }} /p:LibrariesConfiguration=${{ parameters.buildConfig }} -mono -ci os ${{ parameters.osGroup }} ${{ parameters.archType }} $(buildConfigUpper) + - script: $(Build.SourcesDirectory)/src/tests/build$(scriptExt) /p:RuntimeVariant=${{ parameters.runtimeVariant }} '${{ parameters.testFilter }}' /p:LibrariesConfiguration=${{ parameters.buildConfig }} -mono -ci os ${{ parameters.osGroup }} ${{ parameters.archType }} $(buildConfigUpper) displayName: Build Tests - ${{ if ne(parameters.runtimeFlavor, 'mono') }}: - - script: $(Build.SourcesDirectory)/src/tests/build$(scriptExt) /p:LibrariesConfiguration=${{ parameters.buildConfig }} -ci os ${{ parameters.osGroup }} ${{ parameters.archType }} $(buildConfigUpper) + - script: $(Build.SourcesDirectory)/src/tests/build$(scriptExt) ${{ parameters.testBuildMode }} '${{ parameters.testFilter }}' /p:LibrariesConfiguration=${{ parameters.buildConfig }} -ci os ${{ parameters.osGroup }} ${{ parameters.archType }} $(buildConfigUpper) displayName: Build Tests diff --git a/eng/pipelines/runtime.yml b/eng/pipelines/runtime.yml index 7e2690fc82fd8e..b47bc4abc9f0e8 100644 --- a/eng/pipelines/runtime.yml +++ b/eng/pipelines/runtime.yml @@ -257,6 +257,43 @@ extends: eq(dependencies.evaluate_paths.outputs['SetPathVars_runtimetests.containsChange'], true), eq(variables['isFullMatrix'], true)) + # + # CoreCLR NativeAOT debug build and smoke tests (helix) + # Only when CoreCLR is changed + # + - template: /eng/pipelines/common/platform-matrix.yml + parameters: + jobTemplate: /eng/pipelines/common/global-build-job.yml + helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml + buildConfig: release + runtimeFlavor: coreclr + runtimeVariant: '' + testBuildMode: nativeaot + testFilter: tree nativeaot + platforms: + - linux_x64 + - windows_x64 + variables: + - name: timeoutPerTestInMinutes + value: 60 + - name: timeoutPerTestCollectionInMinutes + value: 180 + jobParameters: + testGroup: innerloop + timeoutInMinutes: 120 + nameSuffix: NativeAOT_Helix + buildArgs: -s clr.aot+host.native+libs -rc $(_BuildConfig) -lc Release -hc Release + timeoutInMinutes: 120 + extraStepsTemplate: /eng/pipelines/common/templates/runtimes/build-runtime-tests-and-send-to-helix.yml + extraStepsParameters: + creator: dotnet-bot + testRunNamePrefix: NativeAOT_Release + condition: >- + or( + eq(dependencies.evaluate_paths.outputs['SetPathVars_coreclr.containsChange'], true), + eq(dependencies.evaluate_paths.outputs['SetPathVars_runtimetests.containsChange'], true), + eq(variables['isFullMatrix'], true)) + # # CoreCLR NativeAOT release build and libraries tests # Only when CoreCLR or library is changed From d5c349716b27bb7e4457b0017a1e0be923b52e24 Mon Sep 17 00:00:00 2001 From: Sven Boemer Date: Tue, 31 Jan 2023 19:23:59 +0000 Subject: [PATCH 02/15] Fix timeout --- eng/pipelines/runtime.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/eng/pipelines/runtime.yml b/eng/pipelines/runtime.yml index b47bc4abc9f0e8..0ad8eaffe2ddfc 100644 --- a/eng/pipelines/runtime.yml +++ b/eng/pipelines/runtime.yml @@ -283,7 +283,6 @@ extends: timeoutInMinutes: 120 nameSuffix: NativeAOT_Helix buildArgs: -s clr.aot+host.native+libs -rc $(_BuildConfig) -lc Release -hc Release - timeoutInMinutes: 120 extraStepsTemplate: /eng/pipelines/common/templates/runtimes/build-runtime-tests-and-send-to-helix.yml extraStepsParameters: creator: dotnet-bot From 3fce07961355c1815c3fdbe97b78cd5a6e620802 Mon Sep 17 00:00:00 2001 From: Sven Boemer Date: Tue, 31 Jan 2023 19:44:13 +0000 Subject: [PATCH 03/15] Remove condition --- eng/pipelines/runtime.yml | 5 ----- 1 file changed, 5 deletions(-) diff --git a/eng/pipelines/runtime.yml b/eng/pipelines/runtime.yml index 0ad8eaffe2ddfc..7521e3765684df 100644 --- a/eng/pipelines/runtime.yml +++ b/eng/pipelines/runtime.yml @@ -287,11 +287,6 @@ extends: extraStepsParameters: creator: dotnet-bot testRunNamePrefix: NativeAOT_Release - condition: >- - or( - eq(dependencies.evaluate_paths.outputs['SetPathVars_coreclr.containsChange'], true), - eq(dependencies.evaluate_paths.outputs['SetPathVars_runtimetests.containsChange'], true), - eq(variables['isFullMatrix'], true)) # # CoreCLR NativeAOT release build and libraries tests From 8c1119dc16cc8acbbbdde39e3eb65831dec17c32 Mon Sep 17 00:00:00 2001 From: Sven Boemer Date: Tue, 31 Jan 2023 21:16:47 +0000 Subject: [PATCH 04/15] Fix test parameters --- eng/pipelines/runtime.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/eng/pipelines/runtime.yml b/eng/pipelines/runtime.yml index 7521e3765684df..053db377b95c4c 100644 --- a/eng/pipelines/runtime.yml +++ b/eng/pipelines/runtime.yml @@ -268,8 +268,6 @@ extends: buildConfig: release runtimeFlavor: coreclr runtimeVariant: '' - testBuildMode: nativeaot - testFilter: tree nativeaot platforms: - linux_x64 - windows_x64 @@ -286,7 +284,9 @@ extends: extraStepsTemplate: /eng/pipelines/common/templates/runtimes/build-runtime-tests-and-send-to-helix.yml extraStepsParameters: creator: dotnet-bot - testRunNamePrefix: NativeAOT_Release + testBuildMode: nativeaot + testFilter: tree nativeaot + testRunNamePrefixSuffix: NativeAOT_Release # # CoreCLR NativeAOT release build and libraries tests From 4f35348d3820a40de3fe514be6f2953de6c00145 Mon Sep 17 00:00:00 2001 From: Sven Boemer Date: Wed, 1 Feb 2023 00:17:28 +0000 Subject: [PATCH 05/15] More fixes - buildConfig casing - Support uniform test filter syntax for bash/cmd - Remove problematic quotes from testFilter argument --- .../build-runtime-tests-and-send-to-helix.yml | 4 +-- .../coreclr/nativeaot-post-build-steps.yml | 2 +- eng/pipelines/runtime.yml | 2 +- src/tests/build.sh | 28 ++++++++++++++++--- 4 files changed, 28 insertions(+), 8 deletions(-) diff --git a/eng/pipelines/common/templates/runtimes/build-runtime-tests-and-send-to-helix.yml b/eng/pipelines/common/templates/runtimes/build-runtime-tests-and-send-to-helix.yml index bb3007c06cbfc0..8d8600c6c6f860 100644 --- a/eng/pipelines/common/templates/runtimes/build-runtime-tests-and-send-to-helix.yml +++ b/eng/pipelines/common/templates/runtimes/build-runtime-tests-and-send-to-helix.yml @@ -27,11 +27,11 @@ parameters: steps: - ${{ if eq(parameters.runtimeFlavor, 'mono') }}: - - script: $(Build.SourcesDirectory)/src/tests/build$(scriptExt) /p:RuntimeVariant=${{ parameters.runtimeVariant }} '${{ parameters.testFilter }}' /p:LibrariesConfiguration=${{ parameters.buildConfig }} -mono -ci os ${{ parameters.osGroup }} ${{ parameters.archType }} $(buildConfigUpper) + - script: $(Build.SourcesDirectory)/src/tests/build$(scriptExt) /p:RuntimeVariant=${{ parameters.runtimeVariant }} ${{ parameters.testFilter }} /p:LibrariesConfiguration=${{ parameters.buildConfig }} -mono -ci os ${{ parameters.osGroup }} ${{ parameters.archType }} $(buildConfigUpper) displayName: Build Tests - ${{ if ne(parameters.runtimeFlavor, 'mono') }}: - - script: $(Build.SourcesDirectory)/src/tests/build$(scriptExt) ${{ parameters.testBuildMode }} '${{ parameters.testFilter }}' /p:LibrariesConfiguration=${{ parameters.buildConfig }} -ci os ${{ parameters.osGroup }} ${{ parameters.archType }} $(buildConfigUpper) + - script: $(Build.SourcesDirectory)/src/tests/build$(scriptExt) ${{ parameters.testBuildMode }} ${{ parameters.testFilter }} /p:LibrariesConfiguration=${{ parameters.buildConfig }} -ci os ${{ parameters.osGroup }} ${{ parameters.archType }} $(buildConfigUpper) displayName: Build Tests diff --git a/eng/pipelines/coreclr/nativeaot-post-build-steps.yml b/eng/pipelines/coreclr/nativeaot-post-build-steps.yml index 2e8ee062d25aaa..07656e639685c8 100644 --- a/eng/pipelines/coreclr/nativeaot-post-build-steps.yml +++ b/eng/pipelines/coreclr/nativeaot-post-build-steps.yml @@ -19,7 +19,7 @@ steps: - script: $(Build.SourcesDirectory)/src/tests/build.cmd nativeaot $(buildConfigUpper) ${{ parameters.archType }} ${{ parameters.testFilter }} /p:BuildNativeAotFrameworkObjects=true displayName: Build tests - ${{ if ne(parameters.osGroup, 'windows') }}: - - script: $(Build.SourcesDirectory)/src/tests/build.sh nativeaot $(buildConfigUpper) ${{ parameters.archType }} '${{ parameters.testFilter }}' + - script: $(Build.SourcesDirectory)/src/tests/build.sh nativeaot $(buildConfigUpper) ${{ parameters.archType }} ${{ parameters.testFilter }} displayName: Build tests - ${{ if eq(parameters.runSingleFileTests, true) }}: diff --git a/eng/pipelines/runtime.yml b/eng/pipelines/runtime.yml index 053db377b95c4c..03afc87422e14e 100644 --- a/eng/pipelines/runtime.yml +++ b/eng/pipelines/runtime.yml @@ -265,7 +265,7 @@ extends: parameters: jobTemplate: /eng/pipelines/common/global-build-job.yml helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml - buildConfig: release + buildConfig: Release runtimeFlavor: coreclr runtimeVariant: '' platforms: diff --git a/src/tests/build.sh b/src/tests/build.sh index d57654b51a6eb8..a9137f61d8cbfd 100755 --- a/src/tests/build.sh +++ b/src/tests/build.sh @@ -234,19 +234,34 @@ handle_arguments_local() { test*|-test*) local arg="$1" local parts=(${arg//:/ }) - __BuildTestProject="$__BuildTestProject${parts[1]}%3B" + if [[ ${#parts[@]} -eq 1 ]]; then + shift + __BuildTestProject="$__BuildTestProject$1%3B" + else + __BuildTestProject="$__BuildTestProject${parts[1]}%3B" + fi ;; dir*|-dir*) local arg="$1" local parts=(${arg//:/ }) - __BuildTestDir="$__BuildTestDir${parts[1]}%3B" + if [[ ${#parts[@]} -eq 1 ]]; then + shift + __BuildTestDir="$__BuildTestDir$1%3B" + else + __BuildTestDir="$__BuildTestDir${parts[1]}%3B" + fi ;; tree*|-tree*) local arg="$1" local parts=(${arg//:/ }) - __BuildTestTree="$__BuildTestTree${parts[1]}%3B" + if [[ ${#parts[@]} -eq 1 ]]; then + shift + __BuildTestTree="$__BuildTestTree$1%3B" + else + __BuildTestTree="$__BuildTestTree${parts[1]}%3B" + fi ;; runtests|-runtests) @@ -284,7 +299,12 @@ handle_arguments_local() { log*|-log*) local arg="$1" local parts=(${arg//:/ }) - __BuildLogRootName="${parts[1]}" + if [[ ${#parts[@]} -eq 1 ]]; then + shift + __BuildLogRootName="$1" + else + __BuildLogRootName="${parts[1]}" + fi ;; *) From 9bc58100090d49474e24e255b3a180f0a572fd90 Mon Sep 17 00:00:00 2001 From: Sven Boemer Date: Wed, 1 Feb 2023 19:13:51 +0000 Subject: [PATCH 06/15] Use nativeaot test launcher script And remove broken os arg. Also clean up: - release config comment - use of platform-specific test filter --- .../runtimes/build-runtime-tests-and-send-to-helix.yml | 4 +++- eng/pipelines/common/templates/runtimes/build-test-job.yml | 4 ---- .../common/templates/runtimes/send-to-helix-step.yml | 2 ++ eng/pipelines/runtime.yml | 3 ++- src/tests/Common/helixpublishwitharcade.proj | 6 ++++++ 5 files changed, 13 insertions(+), 6 deletions(-) diff --git a/eng/pipelines/common/templates/runtimes/build-runtime-tests-and-send-to-helix.yml b/eng/pipelines/common/templates/runtimes/build-runtime-tests-and-send-to-helix.yml index 8d8600c6c6f860..3f3729fa158ed8 100644 --- a/eng/pipelines/common/templates/runtimes/build-runtime-tests-and-send-to-helix.yml +++ b/eng/pipelines/common/templates/runtimes/build-runtime-tests-and-send-to-helix.yml @@ -10,6 +10,7 @@ parameters: helixQueues: '' displayNameArgs: '' runInUnloadableContext: false + nativeAotTest: false runtimeFlavor: 'mono' runtimeVariant: 'monointerpreter' testBuildMode: '' @@ -31,7 +32,7 @@ steps: displayName: Build Tests - ${{ if ne(parameters.runtimeFlavor, 'mono') }}: - - script: $(Build.SourcesDirectory)/src/tests/build$(scriptExt) ${{ parameters.testBuildMode }} ${{ parameters.testFilter }} /p:LibrariesConfiguration=${{ parameters.buildConfig }} -ci os ${{ parameters.osGroup }} ${{ parameters.archType }} $(buildConfigUpper) + - script: $(Build.SourcesDirectory)/src/tests/build$(scriptExt) ${{ parameters.testBuildMode }} ${{ parameters.testFilter }} /p:LibrariesConfiguration=${{ parameters.buildConfig }} -ci ${{ parameters.archType }} $(buildConfigUpper) displayName: Build Tests @@ -105,6 +106,7 @@ steps: runCrossGen2: ${{ eq(parameters.readyToRun, true) }} compositeBuildMode: ${{ parameters.compositeBuildMode }} runInUnloadableContext: ${{ parameters.runInUnloadableContext }} + nativeAotTest: ${{ parameters.nativeAotTest }} ${{ if eq(variables['System.TeamProject'], 'internal') }}: # Access token variable for internal project from the diff --git a/eng/pipelines/common/templates/runtimes/build-test-job.yml b/eng/pipelines/common/templates/runtimes/build-test-job.yml index 15c2d39f15c387..06d6935173868a 100644 --- a/eng/pipelines/common/templates/runtimes/build-test-job.yml +++ b/eng/pipelines/common/templates/runtimes/build-test-job.yml @@ -98,12 +98,8 @@ jobs: # Only build GCSimulator tests when the gc-simulator group is specified. - ${{ if eq(parameters.testGroup, 'gc-simulator') }}: - - ${{ if eq(parameters.osGroup, 'windows') }}: - name: testTreeFilterArg value: 'tree GC/Scenarios/GCSimulator' - - ${{ if ne(parameters.osGroup, 'windows') }}: - - name: testTreeFilterArg - value: '-tree:GC/Scenarios/GCSimulator' steps: diff --git a/eng/pipelines/common/templates/runtimes/send-to-helix-step.yml b/eng/pipelines/common/templates/runtimes/send-to-helix-step.yml index 5467dd4c248377..f1d7f5ac509a28 100644 --- a/eng/pipelines/common/templates/runtimes/send-to-helix-step.yml +++ b/eng/pipelines/common/templates/runtimes/send-to-helix-step.yml @@ -22,6 +22,7 @@ parameters: helixProjectArguments: '' runInUnloadableContext: '' tieringTest: '' + nativeAotTest: '' longRunningGcTests: '' gcSimulatorTests: '' runtimeFlavor: 'CoreCLR' @@ -51,6 +52,7 @@ steps: _CompositeBuildMode: ${{ parameters.compositeBuildMode }} _RunInUnloadableContext: ${{ parameters.runInUnloadableContext }} _TieringTest: ${{ parameters.tieringTest }} + _NativeAotTest: ${{ parameters.nativeAotTest }} _LongRunningGcTests: ${{ parameters.longRunningGcTests }} _GcSimulatorTests: ${{ parameters.gcSimulatorTests }} _Scenarios: ${{ join(',', parameters.scenarios) }} diff --git a/eng/pipelines/runtime.yml b/eng/pipelines/runtime.yml index 03afc87422e14e..0f584fef6b4a7c 100644 --- a/eng/pipelines/runtime.yml +++ b/eng/pipelines/runtime.yml @@ -258,7 +258,7 @@ extends: eq(variables['isFullMatrix'], true)) # - # CoreCLR NativeAOT debug build and smoke tests (helix) + # CoreCLR NativeAOT release build and smoke tests (helix) # Only when CoreCLR is changed # - template: /eng/pipelines/common/platform-matrix.yml @@ -285,6 +285,7 @@ extends: extraStepsParameters: creator: dotnet-bot testBuildMode: nativeaot + nativeAotTest: true testFilter: tree nativeaot testRunNamePrefixSuffix: NativeAOT_Release diff --git a/src/tests/Common/helixpublishwitharcade.proj b/src/tests/Common/helixpublishwitharcade.proj index 522d147daff80d..dcddf44d977b2d 100644 --- a/src/tests/Common/helixpublishwitharcade.proj +++ b/src/tests/Common/helixpublishwitharcade.proj @@ -40,6 +40,7 @@ <_GcSimulatorTests>false <_RunInUnloadableContext>false <_TieringTest>false + <_NativeAotTest>false <_TimeoutPerTestCollectionInMinutes>123 <_TimeoutPerTestInMinutes>234 <_RuntimeVariant> @@ -95,6 +96,7 @@ GcSimulatorTests=$(_GcSimulatorTests); RunInUnloadableContext=$(_RunInUnloadableContext); TieringTest=$(_TieringTest); + NativeAotTest=$(_NativeAotTest); TimeoutPerTestCollectionInMinutes=$(_TimeoutPerTestCollectionInMinutes); TimeoutPerTestInMinutes=$(_TimeoutPerTestInMinutes); RuntimeVariant=$(_RuntimeVariant); @@ -288,6 +290,8 @@ + + @@ -602,6 +606,7 @@ + @@ -650,6 +655,7 @@ + From 97ff5a00e462ceaf5edb629d889965f5ab4dfe1f Mon Sep 17 00:00:00 2001 From: Sven Boemer Date: Thu, 2 Feb 2023 00:49:49 +0000 Subject: [PATCH 07/15] More fixes - Pass args not recognized by build.cmd last - Make native exe executable on unix --- .../runtimes/build-runtime-tests-and-send-to-helix.yml | 4 ++-- eng/pipelines/common/templates/runtimes/run-test-job.yml | 8 ++------ src/tests/Common/scripts/nativeaottest.sh | 1 + 3 files changed, 5 insertions(+), 8 deletions(-) diff --git a/eng/pipelines/common/templates/runtimes/build-runtime-tests-and-send-to-helix.yml b/eng/pipelines/common/templates/runtimes/build-runtime-tests-and-send-to-helix.yml index 3f3729fa158ed8..5fe92adb36f876 100644 --- a/eng/pipelines/common/templates/runtimes/build-runtime-tests-and-send-to-helix.yml +++ b/eng/pipelines/common/templates/runtimes/build-runtime-tests-and-send-to-helix.yml @@ -28,11 +28,11 @@ parameters: steps: - ${{ if eq(parameters.runtimeFlavor, 'mono') }}: - - script: $(Build.SourcesDirectory)/src/tests/build$(scriptExt) /p:RuntimeVariant=${{ parameters.runtimeVariant }} ${{ parameters.testFilter }} /p:LibrariesConfiguration=${{ parameters.buildConfig }} -mono -ci os ${{ parameters.osGroup }} ${{ parameters.archType }} $(buildConfigUpper) + - script: $(Build.SourcesDirectory)/src/tests/build$(scriptExt) /p:RuntimeVariant=${{ parameters.runtimeVariant }} ${{ parameters.testFilter }} -mono os ${{ parameters.osGroup }} ${{ parameters.archType }} $(buildConfigUpper) /p:LibrariesConfiguration=${{ parameters.buildConfig }} -ci displayName: Build Tests - ${{ if ne(parameters.runtimeFlavor, 'mono') }}: - - script: $(Build.SourcesDirectory)/src/tests/build$(scriptExt) ${{ parameters.testBuildMode }} ${{ parameters.testFilter }} /p:LibrariesConfiguration=${{ parameters.buildConfig }} -ci ${{ parameters.archType }} $(buildConfigUpper) + - script: $(Build.SourcesDirectory)/src/tests/build$(scriptExt) ${{ parameters.testBuildMode }} ${{ parameters.testFilter }} ${{ parameters.archType }} $(buildConfigUpper) /p:LibrariesConfiguration=${{ parameters.buildConfig }} -ci displayName: Build Tests diff --git a/eng/pipelines/common/templates/runtimes/run-test-job.yml b/eng/pipelines/common/templates/runtimes/run-test-job.yml index 93b42ae02506bb..6712f6c9d3c960 100644 --- a/eng/pipelines/common/templates/runtimes/run-test-job.yml +++ b/eng/pipelines/common/templates/runtimes/run-test-job.yml @@ -139,12 +139,8 @@ jobs: # Only build GCSimulator tests when the gc-simulator group is specified. - ${{ if eq(parameters.testGroup, 'gc-simulator') }}: - - ${{ if eq(parameters.osGroup, 'windows') }}: - - name: testTreeFilterArg - value: 'tree GC/Scenarios/GCSimulator' - - ${{ if ne(parameters.osGroup, 'windows') }}: - - name: testTreeFilterArg - value: '-tree:GC/Scenarios/GCSimulator' + - name: testTreeFilterArg + value: 'tree GC/Scenarios/GCSimulator' # Variables used for SuperPMI collection - ${{ if eq(parameters.SuperPmiCollect, true) }}: diff --git a/src/tests/Common/scripts/nativeaottest.sh b/src/tests/Common/scripts/nativeaottest.sh index c4c38fbd242b96..3549f613bf491c 100755 --- a/src/tests/Common/scripts/nativeaottest.sh +++ b/src/tests/Common/scripts/nativeaottest.sh @@ -11,4 +11,5 @@ # 3. - n. Additional arguments that were passed to the test .sh exename=$(basename $2 .dll) +chmod +x $1/native/$exename $_DebuggerFullPath $1/native/$exename "${@:3}" From aeacfa729981621a5591ce66d7149eecf0e1fe54 Mon Sep 17 00:00:00 2001 From: Sven Boemer Date: Thu, 2 Feb 2023 18:22:20 +0000 Subject: [PATCH 08/15] Factor existing job definitions - Replace existing nativeaot smoke test jobs with helix versions - Move BuildNativeAotFrameworkObjects out to runtime.yml, and only pass it for checked windows job. - Use nativeaot-post-build-steps to continue building nativeaot test apps --- .../build-runtime-tests-and-send-to-helix.yml | 7 +- .../coreclr/nativeaot-post-build-steps.yml | 22 +----- eng/pipelines/runtime.yml | 69 ++++++++++--------- 3 files changed, 44 insertions(+), 54 deletions(-) diff --git a/eng/pipelines/common/templates/runtimes/build-runtime-tests-and-send-to-helix.yml b/eng/pipelines/common/templates/runtimes/build-runtime-tests-and-send-to-helix.yml index 5fe92adb36f876..6e9deaf796ed4b 100644 --- a/eng/pipelines/common/templates/runtimes/build-runtime-tests-and-send-to-helix.yml +++ b/eng/pipelines/common/templates/runtimes/build-runtime-tests-and-send-to-helix.yml @@ -2,7 +2,7 @@ parameters: buildConfig: '' osSubgroup: '' container: '' - testFilter: '' + testBuildArgs: '' crossBuild: false readyToRun: false liveLibrariesBuildConfig: '' @@ -13,7 +13,6 @@ parameters: nativeAotTest: false runtimeFlavor: 'mono' runtimeVariant: 'monointerpreter' - testBuildMode: '' variables: {} pool: '' dependsOn: [] @@ -28,11 +27,11 @@ parameters: steps: - ${{ if eq(parameters.runtimeFlavor, 'mono') }}: - - script: $(Build.SourcesDirectory)/src/tests/build$(scriptExt) /p:RuntimeVariant=${{ parameters.runtimeVariant }} ${{ parameters.testFilter }} -mono os ${{ parameters.osGroup }} ${{ parameters.archType }} $(buildConfigUpper) /p:LibrariesConfiguration=${{ parameters.buildConfig }} -ci + - script: $(Build.SourcesDirectory)/src/tests/build$(scriptExt) /p:RuntimeVariant=${{ parameters.runtimeVariant }} ${{ parameters.testBuildArgs }} -mono os ${{ parameters.osGroup }} ${{ parameters.archType }} $(buildConfigUpper) /p:LibrariesConfiguration=${{ parameters.buildConfig }} -ci displayName: Build Tests - ${{ if ne(parameters.runtimeFlavor, 'mono') }}: - - script: $(Build.SourcesDirectory)/src/tests/build$(scriptExt) ${{ parameters.testBuildMode }} ${{ parameters.testFilter }} ${{ parameters.archType }} $(buildConfigUpper) /p:LibrariesConfiguration=${{ parameters.buildConfig }} -ci + - script: $(Build.SourcesDirectory)/src/tests/build$(scriptExt) ${{ parameters.archType }} $(buildConfigUpper) ${{ parameters.testBuildArgs }} /p:LibrariesConfiguration=${{ parameters.buildConfig }} -ci displayName: Build Tests diff --git a/eng/pipelines/coreclr/nativeaot-post-build-steps.yml b/eng/pipelines/coreclr/nativeaot-post-build-steps.yml index 07656e639685c8..e5ee1ec33447ea 100644 --- a/eng/pipelines/coreclr/nativeaot-post-build-steps.yml +++ b/eng/pipelines/coreclr/nativeaot-post-build-steps.yml @@ -4,31 +4,15 @@ parameters: osGroup: '' osSubgroup: '' platform: '' - pgoType: '' runtimeVariant: '' - uploadTests: false - testFilter: tree nativeaot - runSingleFileTests: true + testBuildArgs: '' steps: # Can't run arm/arm64 tests on x64 build machines - ${{ if and(ne(parameters.archType, 'arm'), ne(parameters.archType, 'arm64')) }}: - # Build coreclr native test output - - ${{ if eq(parameters.osGroup, 'windows') }}: - - script: $(Build.SourcesDirectory)/src/tests/build.cmd nativeaot $(buildConfigUpper) ${{ parameters.archType }} ${{ parameters.testFilter }} /p:BuildNativeAotFrameworkObjects=true - displayName: Build tests - - ${{ if ne(parameters.osGroup, 'windows') }}: - - script: $(Build.SourcesDirectory)/src/tests/build.sh nativeaot $(buildConfigUpper) ${{ parameters.archType }} ${{ parameters.testFilter }} - displayName: Build tests - - - ${{ if eq(parameters.runSingleFileTests, true) }}: - - ${{ if eq(parameters.osGroup, 'windows') }}: - - script: $(Build.SourcesDirectory)/src/tests/run.cmd runnativeaottests $(buildConfigUpper) ${{ parameters.archType }} - displayName: Run tests in single file mode - - ${{ if ne(parameters.osGroup, 'windows') }}: - - script: $(Build.SourcesDirectory)/src/tests/run.sh --runnativeaottests $(buildConfigUpper) ${{ parameters.archType }} - displayName: Run tests in single file mode + # Build coreclr native test output and send to helix + - template: /eng/pipelines/common/templates/runtimes/build-runtime-tests-and-send-to-helix.yml # Publishing tooling doesn't support different configs between runtime and libs, so only run tests in Release config - ${{ if eq(parameters.buildConfig, 'release') }}: diff --git a/eng/pipelines/runtime.yml b/eng/pipelines/runtime.yml index 0f584fef6b4a7c..5fb053b3dd6d08 100644 --- a/eng/pipelines/runtime.yml +++ b/eng/pipelines/runtime.yml @@ -195,16 +195,29 @@ extends: - template: /eng/pipelines/common/platform-matrix.yml parameters: jobTemplate: /eng/pipelines/common/global-build-job.yml - buildConfig: debug + helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml + buildConfig: Debug + runtimeFlavor: coreclr + runtimeVariant: '' platforms: - linux_x64 - windows_x64 + variables: + - name: timeoutPerTestInMinutes + value: 60 + - name: timeoutPerTestCollectionInMinutes + value: 180 jobParameters: testGroup: innerloop timeoutInMinutes: 120 - nameSuffix: NativeAOT + nameSuffix: NativeAOT_Helix buildArgs: -s clr.aot+host.native+libs -rc $(_BuildConfig) -lc Release -hc Release extraStepsTemplate: /eng/pipelines/coreclr/nativeaot-post-build-steps.yml + extraStepsParameters: + creator: dotnet-bot + testBuildArgs: nativeaot tree nativeaot + nativeAotTest: true + testRunNamePrefixSuffix: NativeAOT_Debug condition: >- or( eq(dependencies.evaluate_paths.outputs['SetPathVars_coreclr.containsChange'], true), @@ -218,15 +231,28 @@ extends: - template: /eng/pipelines/common/platform-matrix.yml parameters: jobTemplate: /eng/pipelines/common/global-build-job.yml - buildConfig: checked + helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml + buildConfig: Checked + runtimeFlavor: coreclr + runtimeVariant: '' platforms: - windows_x64 + variables: + - name: timeoutPerTestInMinutes + value: 60 + - name: timeoutPerTestCollectionInMinutes + value: 180 jobParameters: testGroup: innerloop timeoutInMinutes: 120 - nameSuffix: NativeAOT + nameSuffix: NativeAOT_Helix buildArgs: -s clr.aot+host.native+libs -rc $(_BuildConfig) -lc Release -hc Release extraStepsTemplate: /eng/pipelines/coreclr/nativeaot-post-build-steps.yml + extraStepsParameters: + creator: dotnet-bot + testBuildArgs: nativeaot tree nativeaot /p:BuildNativeAotFrameworkObjects=true + nativeAotTest: true + testRunNamePrefixSuffix: NativeAOT_Checked condition: >- or( eq(dependencies.evaluate_paths.outputs['SetPathVars_coreclr.containsChange'], true), @@ -237,30 +263,6 @@ extends: # CoreCLR NativeAOT release build and smoke tests # Only when CoreCLR is changed # - - template: /eng/pipelines/common/platform-matrix.yml - parameters: - jobTemplate: /eng/pipelines/common/global-build-job.yml - buildConfig: release - platforms: - - linux_x64 - - windows_x64 - - osx_x64 - jobParameters: - testGroup: innerloop - timeoutInMinutes: 120 - nameSuffix: NativeAOT - buildArgs: -s clr.aot+host.native+libs -rc $(_BuildConfig) -lc Release -hc Release - extraStepsTemplate: /eng/pipelines/coreclr/nativeaot-post-build-steps.yml - condition: >- - or( - eq(dependencies.evaluate_paths.outputs['SetPathVars_coreclr.containsChange'], true), - eq(dependencies.evaluate_paths.outputs['SetPathVars_runtimetests.containsChange'], true), - eq(variables['isFullMatrix'], true)) - - # - # CoreCLR NativeAOT release build and smoke tests (helix) - # Only when CoreCLR is changed - # - template: /eng/pipelines/common/platform-matrix.yml parameters: jobTemplate: /eng/pipelines/common/global-build-job.yml @@ -271,6 +273,7 @@ extends: platforms: - linux_x64 - windows_x64 + - osx_x64 variables: - name: timeoutPerTestInMinutes value: 60 @@ -281,13 +284,17 @@ extends: timeoutInMinutes: 120 nameSuffix: NativeAOT_Helix buildArgs: -s clr.aot+host.native+libs -rc $(_BuildConfig) -lc Release -hc Release - extraStepsTemplate: /eng/pipelines/common/templates/runtimes/build-runtime-tests-and-send-to-helix.yml + extraStepsTemplate: /eng/pipelines/coreclr/nativeaot-post-build-steps.yml extraStepsParameters: creator: dotnet-bot - testBuildMode: nativeaot + testBuildArgs: nativeaot tree nativeaot nativeAotTest: true - testFilter: tree nativeaot testRunNamePrefixSuffix: NativeAOT_Release + condition: >- + or( + eq(dependencies.evaluate_paths.outputs['SetPathVars_coreclr.containsChange'], true), + eq(dependencies.evaluate_paths.outputs['SetPathVars_runtimetests.containsChange'], true), + eq(variables['isFullMatrix'], true)) # # CoreCLR NativeAOT release build and libraries tests From 33b4f0086805486c3cb249e2a823722cde3f126c Mon Sep 17 00:00:00 2001 From: Sven Boemer Date: Thu, 2 Feb 2023 19:17:33 +0000 Subject: [PATCH 09/15] Pass through parameters to inner template --- eng/pipelines/coreclr/nativeaot-post-build-steps.yml | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/eng/pipelines/coreclr/nativeaot-post-build-steps.yml b/eng/pipelines/coreclr/nativeaot-post-build-steps.yml index e5ee1ec33447ea..0605574ca29f18 100644 --- a/eng/pipelines/coreclr/nativeaot-post-build-steps.yml +++ b/eng/pipelines/coreclr/nativeaot-post-build-steps.yml @@ -3,9 +3,10 @@ parameters: archType: '' osGroup: '' osSubgroup: '' - platform: '' + runtimeFlavor: '' runtimeVariant: '' testBuildArgs: '' + nativeAotTest: false steps: # Can't run arm/arm64 tests on x64 build machines @@ -13,6 +14,15 @@ steps: # Build coreclr native test output and send to helix - template: /eng/pipelines/common/templates/runtimes/build-runtime-tests-and-send-to-helix.yml + parameters: + buildConfig: ${{ parameters.buildConfig }} + archType: ${{ parameters.archType }} + osGroup: ${{ parameters.osGroup }} + osSubgroup: ${{ parameters.osSubgroup }} + runtimeFlavor: ${{ parameters.runtimeFlavor }} + runtimeVariant: ${{ parameters.runtimeVariant }} + testBuildArgs: ${{ parameters.testBuildArgs }} + nativeAotTest: ${{ parameters.nativeAotTest }} # Publishing tooling doesn't support different configs between runtime and libs, so only run tests in Release config - ${{ if eq(parameters.buildConfig, 'release') }}: From 32b2f02ac32357d7eac63b05b0d8e98eb7b80fd3 Mon Sep 17 00:00:00 2001 From: Sven Boemer Date: Thu, 2 Feb 2023 20:56:54 +0000 Subject: [PATCH 10/15] Add helixQueues parameter pass-through --- eng/pipelines/coreclr/nativeaot-post-build-steps.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/eng/pipelines/coreclr/nativeaot-post-build-steps.yml b/eng/pipelines/coreclr/nativeaot-post-build-steps.yml index 0605574ca29f18..72b98a68eed3ab 100644 --- a/eng/pipelines/coreclr/nativeaot-post-build-steps.yml +++ b/eng/pipelines/coreclr/nativeaot-post-build-steps.yml @@ -7,6 +7,7 @@ parameters: runtimeVariant: '' testBuildArgs: '' nativeAotTest: false + helixQueues: '' steps: # Can't run arm/arm64 tests on x64 build machines @@ -23,6 +24,7 @@ steps: runtimeVariant: ${{ parameters.runtimeVariant }} testBuildArgs: ${{ parameters.testBuildArgs }} nativeAotTest: ${{ parameters.nativeAotTest }} + helixQueues: ${{ parameters.helixQueues }} # Publishing tooling doesn't support different configs between runtime and libs, so only run tests in Release config - ${{ if eq(parameters.buildConfig, 'release') }}: From 8a894ebaafc1323d01e14857a4816f360b1cc1e1 Mon Sep 17 00:00:00 2001 From: Sven Boemer Date: Thu, 2 Feb 2023 22:49:52 +0000 Subject: [PATCH 11/15] Don't pass build config as libraries config Also clean up name suffixes --- .../runtimes/build-runtime-tests-and-send-to-helix.yml | 2 +- eng/pipelines/runtime.yml | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/eng/pipelines/common/templates/runtimes/build-runtime-tests-and-send-to-helix.yml b/eng/pipelines/common/templates/runtimes/build-runtime-tests-and-send-to-helix.yml index 6e9deaf796ed4b..e97a76cfd9e2ad 100644 --- a/eng/pipelines/common/templates/runtimes/build-runtime-tests-and-send-to-helix.yml +++ b/eng/pipelines/common/templates/runtimes/build-runtime-tests-and-send-to-helix.yml @@ -31,7 +31,7 @@ steps: displayName: Build Tests - ${{ if ne(parameters.runtimeFlavor, 'mono') }}: - - script: $(Build.SourcesDirectory)/src/tests/build$(scriptExt) ${{ parameters.archType }} $(buildConfigUpper) ${{ parameters.testBuildArgs }} /p:LibrariesConfiguration=${{ parameters.buildConfig }} -ci + - script: $(Build.SourcesDirectory)/src/tests/build$(scriptExt) ${{ parameters.archType }} $(buildConfigUpper) ${{ parameters.testBuildArgs }} -ci displayName: Build Tests diff --git a/eng/pipelines/runtime.yml b/eng/pipelines/runtime.yml index 5fb053b3dd6d08..86a1288f27d021 100644 --- a/eng/pipelines/runtime.yml +++ b/eng/pipelines/runtime.yml @@ -210,14 +210,14 @@ extends: jobParameters: testGroup: innerloop timeoutInMinutes: 120 - nameSuffix: NativeAOT_Helix + nameSuffix: NativeAOT buildArgs: -s clr.aot+host.native+libs -rc $(_BuildConfig) -lc Release -hc Release extraStepsTemplate: /eng/pipelines/coreclr/nativeaot-post-build-steps.yml extraStepsParameters: creator: dotnet-bot testBuildArgs: nativeaot tree nativeaot nativeAotTest: true - testRunNamePrefixSuffix: NativeAOT_Debug + testRunNamePrefixSuffix: NativeAOT_$(_BuildConfig) condition: >- or( eq(dependencies.evaluate_paths.outputs['SetPathVars_coreclr.containsChange'], true), @@ -245,14 +245,14 @@ extends: jobParameters: testGroup: innerloop timeoutInMinutes: 120 - nameSuffix: NativeAOT_Helix + nameSuffix: NativeAOT buildArgs: -s clr.aot+host.native+libs -rc $(_BuildConfig) -lc Release -hc Release extraStepsTemplate: /eng/pipelines/coreclr/nativeaot-post-build-steps.yml extraStepsParameters: creator: dotnet-bot testBuildArgs: nativeaot tree nativeaot /p:BuildNativeAotFrameworkObjects=true nativeAotTest: true - testRunNamePrefixSuffix: NativeAOT_Checked + testRunNamePrefixSuffix: NativeAOT_$(_BuildConfig) condition: >- or( eq(dependencies.evaluate_paths.outputs['SetPathVars_coreclr.containsChange'], true), From 967c7ace837d07c2edfb03ef6b32d74d33f850f6 Mon Sep 17 00:00:00 2001 From: Sven Boemer Date: Fri, 3 Feb 2023 17:41:10 +0000 Subject: [PATCH 12/15] Try running pri0 release tests --- eng/pipelines/runtime.yml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/eng/pipelines/runtime.yml b/eng/pipelines/runtime.yml index 86a1288f27d021..35a351c3cb6bec 100644 --- a/eng/pipelines/runtime.yml +++ b/eng/pipelines/runtime.yml @@ -260,7 +260,7 @@ extends: eq(variables['isFullMatrix'], true)) # - # CoreCLR NativeAOT release build and smoke tests + # CoreCLR NativeAOT release build and pri0 tests # Only when CoreCLR is changed # - template: /eng/pipelines/common/platform-matrix.yml @@ -282,14 +282,14 @@ extends: jobParameters: testGroup: innerloop timeoutInMinutes: 120 - nameSuffix: NativeAOT_Helix + nameSuffix: NativeAOT buildArgs: -s clr.aot+host.native+libs -rc $(_BuildConfig) -lc Release -hc Release extraStepsTemplate: /eng/pipelines/coreclr/nativeaot-post-build-steps.yml extraStepsParameters: creator: dotnet-bot - testBuildArgs: nativeaot tree nativeaot + testBuildArgs: nativeaot nativeAotTest: true - testRunNamePrefixSuffix: NativeAOT_Release + testRunNamePrefixSuffix: NativeAOT_$(_BuildConfig) condition: >- or( eq(dependencies.evaluate_paths.outputs['SetPathVars_coreclr.containsChange'], true), From db7a1cbf7a420b05b0859bee90331fda90aac6d1 Mon Sep 17 00:00:00 2001 From: Sven Boemer Date: Fri, 3 Feb 2023 23:11:37 +0000 Subject: [PATCH 13/15] Revert "Try running pri0 release tests" This reverts commit 967c7ace837d07c2edfb03ef6b32d74d33f850f6. --- eng/pipelines/runtime.yml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/eng/pipelines/runtime.yml b/eng/pipelines/runtime.yml index 35a351c3cb6bec..86a1288f27d021 100644 --- a/eng/pipelines/runtime.yml +++ b/eng/pipelines/runtime.yml @@ -260,7 +260,7 @@ extends: eq(variables['isFullMatrix'], true)) # - # CoreCLR NativeAOT release build and pri0 tests + # CoreCLR NativeAOT release build and smoke tests # Only when CoreCLR is changed # - template: /eng/pipelines/common/platform-matrix.yml @@ -282,14 +282,14 @@ extends: jobParameters: testGroup: innerloop timeoutInMinutes: 120 - nameSuffix: NativeAOT + nameSuffix: NativeAOT_Helix buildArgs: -s clr.aot+host.native+libs -rc $(_BuildConfig) -lc Release -hc Release extraStepsTemplate: /eng/pipelines/coreclr/nativeaot-post-build-steps.yml extraStepsParameters: creator: dotnet-bot - testBuildArgs: nativeaot + testBuildArgs: nativeaot tree nativeaot nativeAotTest: true - testRunNamePrefixSuffix: NativeAOT_$(_BuildConfig) + testRunNamePrefixSuffix: NativeAOT_Release condition: >- or( eq(dependencies.evaluate_paths.outputs['SetPathVars_coreclr.containsChange'], true), From ce45ca9f75020246bdd80ad5c548d6f6bfaef2ce Mon Sep 17 00:00:00 2001 From: Sven Boemer Date: Fri, 3 Feb 2023 23:14:52 +0000 Subject: [PATCH 14/15] Use buildconfig as suffix --- eng/pipelines/runtime.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/eng/pipelines/runtime.yml b/eng/pipelines/runtime.yml index 86a1288f27d021..c75d8b4dffad64 100644 --- a/eng/pipelines/runtime.yml +++ b/eng/pipelines/runtime.yml @@ -289,7 +289,7 @@ extends: creator: dotnet-bot testBuildArgs: nativeaot tree nativeaot nativeAotTest: true - testRunNamePrefixSuffix: NativeAOT_Release + testRunNamePrefixSuffix: NativeAOT_$(_BuildConfig) condition: >- or( eq(dependencies.evaluate_paths.outputs['SetPathVars_coreclr.containsChange'], true), From 79c6ddc711bf8636cb07a64a2cd1f036da67daf3 Mon Sep 17 00:00:00 2001 From: Sven Boemer Date: Mon, 6 Feb 2023 16:49:47 +0000 Subject: [PATCH 15/15] PR feedback - Remove unnecessary parameters - Clean up nameSuffix --- eng/pipelines/coreclr/nativeaot-post-build-steps.yml | 9 +++------ eng/pipelines/runtime.yml | 11 +---------- 2 files changed, 4 insertions(+), 16 deletions(-) diff --git a/eng/pipelines/coreclr/nativeaot-post-build-steps.yml b/eng/pipelines/coreclr/nativeaot-post-build-steps.yml index 72b98a68eed3ab..3864d28f4e06d6 100644 --- a/eng/pipelines/coreclr/nativeaot-post-build-steps.yml +++ b/eng/pipelines/coreclr/nativeaot-post-build-steps.yml @@ -3,10 +3,7 @@ parameters: archType: '' osGroup: '' osSubgroup: '' - runtimeFlavor: '' - runtimeVariant: '' testBuildArgs: '' - nativeAotTest: false helixQueues: '' steps: @@ -20,10 +17,10 @@ steps: archType: ${{ parameters.archType }} osGroup: ${{ parameters.osGroup }} osSubgroup: ${{ parameters.osSubgroup }} - runtimeFlavor: ${{ parameters.runtimeFlavor }} - runtimeVariant: ${{ parameters.runtimeVariant }} + runtimeFlavor: coreclr + runtimeVariant: '' testBuildArgs: ${{ parameters.testBuildArgs }} - nativeAotTest: ${{ parameters.nativeAotTest }} + nativeAotTest: true helixQueues: ${{ parameters.helixQueues }} # Publishing tooling doesn't support different configs between runtime and libs, so only run tests in Release config diff --git a/eng/pipelines/runtime.yml b/eng/pipelines/runtime.yml index c75d8b4dffad64..a3c6dd5392dfe8 100644 --- a/eng/pipelines/runtime.yml +++ b/eng/pipelines/runtime.yml @@ -197,8 +197,6 @@ extends: jobTemplate: /eng/pipelines/common/global-build-job.yml helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml buildConfig: Debug - runtimeFlavor: coreclr - runtimeVariant: '' platforms: - linux_x64 - windows_x64 @@ -216,7 +214,6 @@ extends: extraStepsParameters: creator: dotnet-bot testBuildArgs: nativeaot tree nativeaot - nativeAotTest: true testRunNamePrefixSuffix: NativeAOT_$(_BuildConfig) condition: >- or( @@ -233,8 +230,6 @@ extends: jobTemplate: /eng/pipelines/common/global-build-job.yml helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml buildConfig: Checked - runtimeFlavor: coreclr - runtimeVariant: '' platforms: - windows_x64 variables: @@ -251,7 +246,6 @@ extends: extraStepsParameters: creator: dotnet-bot testBuildArgs: nativeaot tree nativeaot /p:BuildNativeAotFrameworkObjects=true - nativeAotTest: true testRunNamePrefixSuffix: NativeAOT_$(_BuildConfig) condition: >- or( @@ -268,8 +262,6 @@ extends: jobTemplate: /eng/pipelines/common/global-build-job.yml helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml buildConfig: Release - runtimeFlavor: coreclr - runtimeVariant: '' platforms: - linux_x64 - windows_x64 @@ -282,13 +274,12 @@ extends: jobParameters: testGroup: innerloop timeoutInMinutes: 120 - nameSuffix: NativeAOT_Helix + nameSuffix: NativeAOT buildArgs: -s clr.aot+host.native+libs -rc $(_BuildConfig) -lc Release -hc Release extraStepsTemplate: /eng/pipelines/coreclr/nativeaot-post-build-steps.yml extraStepsParameters: creator: dotnet-bot testBuildArgs: nativeaot tree nativeaot - nativeAotTest: true testRunNamePrefixSuffix: NativeAOT_$(_BuildConfig) condition: >- or(