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 6bdf98d58f9fa9..b2b78dd9632320 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,6 +28,8 @@ parameters: continueOnError: false displayName: '' timeoutInMinutes: '' + timeoutPerTestInMinutes: '$(timeoutPerTestInMinutes)' + timeoutPerTestCollectionInMinutes: '$(timeoutPerTestCollectionInMinutes)' enableMicrobuild: '' shouldContinueOnError: false @@ -40,6 +42,7 @@ steps: buildConfig: ${{ parameters.buildConfig }} testBuildArgs: ${{ parameters.testBuildArgs }} buildAllTestsAsStandalone: ${{ parameters.buildAllTestsAsStandalone }} + condition: ${{ parameters.condition }} # Build a Mono AOT cross-compiler for non-amd64 targets (in this case, just arm64) - ${{ if and(eq(parameters.runtimeFlavor, 'mono'), in(parameters.runtimeVariant, 'llvmaot', 'llvmfullaot', 'minifullaot')) }}: - ${{ if eq(parameters.archType, 'arm64') }}: @@ -52,6 +55,7 @@ steps: /p:BuildMonoAotCrossCompilerOnly=true /p:CrossBuild=true displayName: "Build Mono Mini AOT cross compiler" + condition: and(succeeded(), ${{ parameters.condition }}) - ${{ else }}: - script: ./build.sh -subset mono @@ -62,34 +66,36 @@ steps: /p:MonoAOTEnableLLVM=true /p:CrossBuild=true displayName: "Build Mono LLVM AOT cross compiler" + condition: and(succeeded(), ${{ parameters.condition }}) - ${{ if eq(parameters.archType, 'x64') }}: - ${{ if eq(parameters.runtimeVariant, 'llvmaot') }}: - script: $(Build.SourcesDirectory)/src/tests/build$(scriptExt) $(logRootNameArg)MonoAot mono_aot ${{ parameters.buildConfig }} -arch ${{ parameters.archType }} /p:RuntimeVariant=${{ parameters.runtimeVariant }} displayName: "AOT compile CoreCLR tests" + condition: and(succeeded(), ${{ parameters.condition }}) target: ${{ coalesce(parameters.llvmAotStepContainer, parameters.container) }} - ${{ if in(parameters.runtimeVariant, 'llvmfullaot', 'minifullaot') }}: - script: $(Build.SourcesDirectory)/src/tests/build$(scriptExt) $(logRootNameArg)MonoAot mono_fullaot ${{ parameters.buildConfig }} -arch ${{ parameters.archType }} /p:RuntimeVariant=${{ parameters.runtimeVariant }} -maxcpucount:1 displayName: "AOT compile CoreCLR tests" + condition: and(succeeded(), ${{ parameters.condition }}) target: ${{ coalesce(parameters.llvmAotStepContainer, parameters.container) }} - ${{ if eq(parameters.archType, 'arm64') }}: - ${{ if eq(parameters.runtimeVariant, 'llvmaot') }}: - script: $(Build.SourcesDirectory)/src/tests/build$(scriptExt) $(logRootNameArg)MonoAot mono_aot ${{ parameters.buildConfig }} -arch ${{ parameters.archType }} cross /p:RuntimeVariant=${{ parameters.runtimeVariant }} -maxcpucount:2 displayName: "AOT cross-compile CoreCLR tests" + condition: and(succeeded(), ${{ parameters.condition }}) env: __MonoToolPrefix: aarch64-linux-gnu- - ${{ if in(parameters.runtimeVariant, 'llvmfullaot', 'minifullaot') }}: - script: $(Build.SourcesDirectory)/src/tests/build$(scriptExt) $(logRootNameArg)MonoAot mono_fullaot ${{ parameters.buildConfig }} -arch ${{ parameters.archType }} cross /p:RuntimeVariant=${{ parameters.runtimeVariant }} -maxcpucount:2 displayName: "AOT cross-compile CoreCLR tests" + condition: and(succeeded(), ${{ parameters.condition }}) env: __MonoToolPrefix: aarch64-linux-gnu- - # Build the runtime tests above, but only send them to Helix when sendToHelix is true. - # This is a compile-time exclusion (not a runtime condition): send-to-helix-inner-step.yml - # wraps the passed-in condition into a string and compares it with ne(condition, false), so a - # runtime 'condition: false' is swallowed and the send runs anyway. Excluding the template keeps - # build coverage while reliably skipping execution on engines that can't run the tests yet - # (e.g. browser/V8 without exnref support). + # Build the runtime tests above, but only include the Helix submission when sendToHelix is true. + # Engines that cannot run the tests yet (e.g. browser/V8 without exnref support) still retain + # build coverage without instantiating a send step. - ${{ if eq(parameters.sendToHelix, true) }}: - template: /eng/pipelines/common/templates/runtimes/send-to-helix-step.yml parameters: @@ -112,6 +118,8 @@ steps: helixBuild: $(Build.BuildNumber) helixSource: $(_HelixSource) + ${{ if eq(parameters.readyToRun, true) }}: + helixType: 'test/functional/r2r/cli/' ${{ if ne(parameters.readyToRun, true) }}: helixType: 'test/functional/cli/' @@ -120,9 +128,11 @@ steps: # This tests whether an array is empty ${{ if eq(join('', parameters.helixQueues), '') }}: condition: false + ${{ else }}: + condition: ${{ parameters.condition }} publishTestResults: true - timeoutPerTestInMinutes: $(timeoutPerTestInMinutes) - timeoutPerTestCollectionInMinutes: $(timeoutPerTestCollectionInMinutes) + timeoutPerTestInMinutes: ${{ parameters.timeoutPerTestInMinutes }} + timeoutPerTestCollectionInMinutes: ${{ parameters.timeoutPerTestCollectionInMinutes }} runCrossGen2: ${{ eq(parameters.readyToRun, true) }} compositeBuildMode: ${{ parameters.compositeBuildMode }} runInUnloadableContext: ${{ parameters.runInUnloadableContext }} diff --git a/eng/pipelines/common/templates/runtimes/build-runtime-tests.yml b/eng/pipelines/common/templates/runtimes/build-runtime-tests.yml index e3aebf807e234a..0d4aa98f2e37de 100644 --- a/eng/pipelines/common/templates/runtimes/build-runtime-tests.yml +++ b/eng/pipelines/common/templates/runtimes/build-runtime-tests.yml @@ -18,6 +18,7 @@ steps: - ${{ if eq(parameters.osGroup, 'windows') }}: - script: $(Build.SourcesDirectory)/src/tests/build$(scriptExt) $(crossArg) ci -arch ${{ parameters.archType }} $(buildConfigUpper) $(_nativeSanitizersArg) $(priorityArg) $(runtimeFlavorArgs) ${{ parameters.testBuildArgs }} $(runtimeVariantArg) $(librariesConfigurationArg) displayName: Build Tests + condition: and(succeeded(), ${{ parameters.condition }}) env: ${{ if eq(parameters.buildAllTestsAsStandalone, true) }}: BuildAllTestsAsStandalone: true @@ -25,6 +26,7 @@ steps: - ${{ if ne(parameters.osGroup, 'windows') }}: - script: $(Build.SourcesDirectory)/src/tests/build$(scriptExt) $(crossArg) ci os ${{ parameters.osGroup }} -arch ${{ parameters.archType }} $(buildConfigUpper) $(_nativeSanitizersArg) $(priorityArg) $(runtimeFlavorArgs) ${{ parameters.testBuildArgs }} $(runtimeVariantArg) $(librariesConfigurationArg) displayName: Build Tests + condition: and(succeeded(), ${{ parameters.condition }}) env: ${{ if eq(parameters.buildAllTestsAsStandalone, true) }}: BuildAllTestsAsStandalone: true diff --git a/eng/pipelines/common/templates/runtimes/send-to-helix-inner-step.yml b/eng/pipelines/common/templates/runtimes/send-to-helix-inner-step.yml index 12e3f68baafb94..30e6a164b3e746 100644 --- a/eng/pipelines/common/templates/runtimes/send-to-helix-inner-step.yml +++ b/eng/pipelines/common/templates/runtimes/send-to-helix-inner-step.yml @@ -1,7 +1,7 @@ parameters: osGroup: '' sendParams: '' - condition: '' + condition: true displayName: '' environment: {} shouldContinueOnError: false @@ -10,13 +10,13 @@ steps: - ${{ if eq(parameters.osGroup, 'windows') }}: - powershell: $(Build.SourcesDirectory)\eng\common\msbuild.ps1 --restore -ci -warnaserror 0 ${{ parameters.sendParams }} displayName: ${{ parameters.displayName }} (Windows) - condition: and(succeeded(), ${{ and(ne(parameters.condition, false), ne(parameters.sendParams, '')) }}) + condition: and(succeeded(), ${{ parameters.condition }}, ${{ ne(parameters.sendParams, '') }}) env: ${{ parameters.environment }} continueOnError: ${{ eq(parameters.shouldContinueOnError, true) }} - ${{ if ne(parameters.osGroup, 'windows') }}: - script: $(Build.SourcesDirectory)/eng/common/msbuild.sh --restore --ci --warnaserror false ${{ parameters.sendParams }} displayName: ${{ parameters.displayName }} (Unix) - condition: and(succeeded(), ${{ and(ne(parameters.condition, false), ne(parameters.sendParams, '')) }}) + condition: and(succeeded(), ${{ parameters.condition }}, ${{ ne(parameters.sendParams, '') }}) env: ${{ parameters.environment }} continueOnError: ${{ eq(parameters.shouldContinueOnError, true) }} 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 50e9de6dcf9fd2..c802ad974a78c7 100644 --- a/eng/pipelines/common/templates/runtimes/send-to-helix-step.yml +++ b/eng/pipelines/common/templates/runtimes/send-to-helix-step.yml @@ -52,7 +52,7 @@ steps: /p:Configuration=${{ parameters.buildConfig }} /p:EnableHelixJobMonitor=${{ parameters.useHelixMonitor }} ${{ parameters.extraHelixArguments }} - condition: and(succeeded(), ${{ parameters.condition }}) + condition: ${{ parameters.condition }} shouldContinueOnError: ${{ parameters.shouldContinueOnError }} displayName: ${{ parameters.displayName }} environment: diff --git a/eng/pipelines/runtime.yml b/eng/pipelines/runtime.yml index e58e2d50c0b2af..9bf23fc477f542 100644 --- a/eng/pipelines/runtime.yml +++ b/eng/pipelines/runtime.yml @@ -188,17 +188,16 @@ extends: - 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 + helixQueueGroup: pr buildConfig: checked platforms: - browser_wasm jobParameters: nameSuffix: CoreCLR_ReleaseLibraries buildArgs: -s clr+libs+libs.tests+packs -c Release -rc $(_BuildConfig) /p:TestAssemblies=false /p:ArchiveTests=true /p:InstallWorkloadForTesting=false - timeoutInMinutes: 120 + timeoutInMinutes: 180 postBuildSteps: - - template: /eng/pipelines/coreclr/templates/build-native-test-assets-step.yml - parameters: - extraBuildArgs: -os browser - template: /eng/pipelines/common/upload-artifact-step.yml parameters: rootFolder: $(Build.SourcesDirectory)/artifacts/bin @@ -220,14 +219,32 @@ extends: parameters: publishArtifactsForWorkload: true publishWBT: true + # Runtime tests use Checked tasks, while the product build produces Release tasks. + # Build the matching WasmAppBuilder and ensure Emscripten is provisioned first. + - template: /eng/pipelines/common/templates/global-build-step.yml + parameters: + buildArgs: -s provision.emsdk+tasks -c $(buildConfigUpper) + displayName: Provision Emscripten SDK and build tasks + - template: /eng/pipelines/common/templates/runtimes/build-runtime-tests-and-send-to-helix.yml + parameters: + creator: dotnet-bot + testBuildArgs: -os browser /p:HostConfiguration=Release + testRunNamePrefixSuffix: CoreCLR_$(_BuildConfig) + useHelixMonitor: ${{ variables.enableHelixJobMonitor }} + - template: /eng/pipelines/common/templates/runtimes/build-runtime-tests-and-send-to-helix.yml + parameters: + creator: dotnet-bot + readyToRun: true + testBuildArgs: generatelayoutonly crossgen2 -os browser /p:HostConfiguration=Release + testRunNamePrefixSuffix: CoreCLR_R2R_CG2_$(_BuildConfig) + timeoutPerTestInMinutes: 30 + timeoutPerTestCollectionInMinutes: 90 + useHelixMonitor: ${{ variables.enableHelixJobMonitor }} extraVariablesTemplates: - template: /eng/pipelines/common/templates/runtimes/test-variables.yml parameters: testGroup: innerloop liveLibrariesBuildConfig: Release - - template: /eng/pipelines/common/templates/runtimes/native-test-assets-variables.yml - parameters: - testGroup: innerloop condition: >- or( eq(variables['wasmDarcDependenciesChanged'], true), @@ -433,7 +450,7 @@ extends: jobTemplate: /eng/pipelines/common/global-build-job.yml helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml helixQueueGroup: libraries - buildConfig: ${{ variables.debugOnPrReleaseOnRolling }} + buildConfig: checked platforms: - linux_arm64 - osx_arm64 @@ -442,26 +459,19 @@ extends: value: $[ stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_libraries.containsChange'] ] - name: coreclrContainsChange value: $[ stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_coreclr.containsChange'] ] + - name: runtimeTestsContainsChange + value: $[ stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_runtimetests.containsChange'] ] jobParameters: nameSuffix: Libraries_CheckedCoreCLR - buildArgs: -s clr+libs+libs.tests -c $(_BuildConfig) -rc Checked /p:ArchiveTests=true - timeoutInMinutes: 120 + buildArgs: -s clr+libs+libs.tests -c ${{ variables.debugOnPrReleaseOnRolling }} -rc $(_BuildConfig) /p:ArchiveTests=true + timeoutInMinutes: 180 preBuildSteps: - template: /eng/pipelines/coreclr/templates/setup-sccache.yml postBuildSteps: - template: /eng/pipelines/coreclr/templates/sccache-stats.yml - - template: /eng/pipelines/coreclr/templates/build-native-test-assets-step.yml - - template: /eng/pipelines/common/upload-artifact-step.yml - parameters: - rootFolder: $(Build.SourcesDirectory)/artifacts/bin - includeRootFolder: false - archiveType: $(archiveType) - archiveExtension: $(archiveExtension) - tarCompression: $(tarCompression) - artifactName: Libraries_CheckedCoreCLR_BuildArtifacts_$(osGroup)$(osSubgroup)_$(archType)_$(_BuildConfig) - displayName: Build Assets - template: /eng/pipelines/libraries/helix.yml parameters: + helixBuildConfig: ${{ variables.debugOnPrReleaseOnRolling }} creator: dotnet-bot testRunNamePrefixSuffix: coreclr_checked testScope: innerloop @@ -473,11 +483,21 @@ extends: eq(variables['osGroup'], 'osx'), eq(variables['librariesContainsChange'], true)), eq(variables['isRollingBuild'], true)) + - template: /eng/pipelines/common/templates/runtimes/build-runtime-tests-and-send-to-helix.yml + parameters: + creator: dotnet-bot + testRunNamePrefixSuffix: CoreCLR_$(_BuildConfig) + useHelixMonitor: ${{ variables.enableHelixJobMonitor }} + condition: >- + or( + eq(variables['coreclrContainsChange'], true), + eq(variables['runtimeTestsContainsChange'], true), + eq(variables['isRollingBuild'], true)) extraVariablesTemplates: - - template: /eng/pipelines/common/templates/runtimes/native-test-assets-variables.yml + - template: /eng/pipelines/common/templates/runtimes/test-variables.yml parameters: testGroup: innerloop - configOverride: Checked + liveLibrariesBuildConfig: ${{ variables.debugOnPrReleaseOnRolling }} condition: >- or( eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_coreclr.containsChange'], true), @@ -488,33 +508,30 @@ extends: - template: /eng/pipelines/common/platform-matrix.yml parameters: jobTemplate: /eng/pipelines/common/global-build-job.yml - buildConfig: ${{ variables.debugOnPrReleaseOnRolling }} + helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml + helixQueueGroup: pr + buildConfig: checked platforms: - linux_x64 - windows_x64 jobParameters: nameSuffix: Libraries_CheckedCoreCLR - buildArgs: -s clr+clr.wasmjit+libs -c $(_BuildConfig) -rc Checked - timeoutInMinutes: 120 + buildArgs: -s clr+clr.wasmjit+libs -c ${{ variables.debugOnPrReleaseOnRolling }} -rc $(_BuildConfig) + timeoutInMinutes: 180 preBuildSteps: - template: /eng/pipelines/coreclr/templates/setup-sccache.yml postBuildSteps: - template: /eng/pipelines/coreclr/templates/sccache-stats.yml - - template: /eng/pipelines/coreclr/templates/build-native-test-assets-step.yml - - template: /eng/pipelines/common/upload-artifact-step.yml + - template: /eng/pipelines/common/templates/runtimes/build-runtime-tests-and-send-to-helix.yml parameters: - rootFolder: $(Build.SourcesDirectory)/artifacts/bin - includeRootFolder: false - archiveType: $(archiveType) - archiveExtension: $(archiveExtension) - tarCompression: $(tarCompression) - artifactName: Libraries_CheckedCoreCLR_BuildArtifacts_$(osGroup)$(osSubgroup)_$(archType)_$(_BuildConfig) - displayName: Build Assets + creator: dotnet-bot + testRunNamePrefixSuffix: CoreCLR_$(_BuildConfig) + useHelixMonitor: ${{ variables.enableHelixJobMonitor }} extraVariablesTemplates: - - template: /eng/pipelines/common/templates/runtimes/native-test-assets-variables.yml + - template: /eng/pipelines/common/templates/runtimes/test-variables.yml parameters: testGroup: innerloop - configOverride: Checked + liveLibrariesBuildConfig: ${{ variables.debugOnPrReleaseOnRolling }} condition: >- or( eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_coreclr.containsChange'], true), @@ -565,32 +582,29 @@ extends: - template: /eng/pipelines/common/platform-matrix.yml parameters: jobTemplate: /eng/pipelines/common/global-build-job.yml - buildConfig: ${{ variables.debugOnPrReleaseOnRolling }} + helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml + helixQueueGroup: pr + buildConfig: checked platforms: - osx_x64 jobParameters: nameSuffix: Libraries_CheckedCoreCLR - buildArgs: -s clr+libs -c $(_BuildConfig) -rc Checked - timeoutInMinutes: 120 + buildArgs: -s clr+libs -c ${{ variables.debugOnPrReleaseOnRolling }} -rc $(_BuildConfig) + timeoutInMinutes: 180 preBuildSteps: - template: /eng/pipelines/coreclr/templates/setup-sccache.yml postBuildSteps: - template: /eng/pipelines/coreclr/templates/sccache-stats.yml - - template: /eng/pipelines/coreclr/templates/build-native-test-assets-step.yml - - template: /eng/pipelines/common/upload-artifact-step.yml + - template: /eng/pipelines/common/templates/runtimes/build-runtime-tests-and-send-to-helix.yml parameters: - rootFolder: $(Build.SourcesDirectory)/artifacts/bin - includeRootFolder: false - archiveType: $(archiveType) - archiveExtension: $(archiveExtension) - tarCompression: $(tarCompression) - artifactName: Libraries_CheckedCoreCLR_BuildArtifacts_$(osGroup)$(osSubgroup)_$(archType)_$(_BuildConfig) - displayName: Build Assets + creator: dotnet-bot + testRunNamePrefixSuffix: CoreCLR_$(_BuildConfig) + useHelixMonitor: ${{ variables.enableHelixJobMonitor }} extraVariablesTemplates: - - template: /eng/pipelines/common/templates/runtimes/native-test-assets-variables.yml + - template: /eng/pipelines/common/templates/runtimes/test-variables.yml parameters: testGroup: innerloop - configOverride: Checked + liveLibrariesBuildConfig: ${{ variables.debugOnPrReleaseOnRolling }} condition: >- or( eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_coreclr.containsChange'], true), @@ -600,6 +614,8 @@ extends: - 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 + helixQueueGroup: pr buildConfig: checked platforms: - linux_arm @@ -608,9 +624,8 @@ extends: jobParameters: nameSuffix: CoreCLR_ReleaseLibraries buildArgs: -s clr+libs -rc $(_BuildConfig) -c Release - timeoutInMinutes: 120 + timeoutInMinutes: 180 postBuildSteps: - - template: /eng/pipelines/coreclr/templates/build-native-test-assets-step.yml - template: /eng/pipelines/common/upload-artifact-step.yml parameters: rootFolder: $(Build.SourcesDirectory)/artifacts/bin @@ -620,10 +635,17 @@ extends: tarCompression: $(tarCompression) artifactName: CoreCLR_ReleaseLibraries_BuildArtifacts_$(osGroup)$(osSubgroup)_$(archType)_$(_BuildConfig) displayName: Build Assets + condition: and(succeeded(), eq(variables['osGroup'], 'linux'), eq(variables['archType'], 'arm')) + - template: /eng/pipelines/common/templates/runtimes/build-runtime-tests-and-send-to-helix.yml + parameters: + creator: dotnet-bot + testRunNamePrefixSuffix: CoreCLR_$(_BuildConfig) + useHelixMonitor: ${{ variables.enableHelixJobMonitor }} extraVariablesTemplates: - - template: /eng/pipelines/common/templates/runtimes/native-test-assets-variables.yml + - template: /eng/pipelines/common/templates/runtimes/test-variables.yml parameters: testGroup: innerloop + liveLibrariesBuildConfig: Release condition: >- or( eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_coreclr.containsChange'], true), @@ -1889,125 +1911,6 @@ extends: extraVariablesTemplates: - template: /eng/pipelines/common/templates/runtimes/test-variables.yml - # - # CoreCLR Test builds using live libraries release build - # Only when CoreCLR is changed - # - - template: /eng/pipelines/common/platform-matrix.yml - parameters: - jobTemplate: /eng/pipelines/common/templates/runtimes/build-test-job.yml - buildConfig: checked - platforms: - - CoreClrTestBuildHost # Either osx_x64 or linux_x64 - jobParameters: - testGroup: innerloop - condition: >- - or( - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_coreclr.containsChange'], true), - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_runtimetests.containsChange'], true), - eq(variables['isRollingBuild'], true)) - - # - # CoreCLR Test executions using live libraries - # Only when CoreCLR is changed - # - - template: /eng/pipelines/common/platform-matrix.yml - parameters: - jobTemplate: /eng/pipelines/common/templates/runtimes/run-test-job.yml - buildConfig: checked - platforms: - - linux_arm - - windows_x86 - - windows_arm64 - helixQueueGroup: pr - helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml - jobParameters: - testGroup: innerloop - liveLibrariesBuildConfig: Release - unifiedArtifactsName: CoreCLR_ReleaseLibraries_BuildArtifacts_$(osGroup)$(osSubgroup)_$(archType)_$(_BuildConfig) - unifiedBuildNameSuffix: CoreCLR_ReleaseLibraries - useHelixMonitor: ${{ variables.enableHelixJobMonitor }} - condition: >- - or( - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_coreclr.containsChange'], true), - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_runtimetests.containsChange'], true), - eq(variables['isRollingBuild'], true)) - - - template: /eng/pipelines/common/platform-matrix.yml - parameters: - jobTemplate: /eng/pipelines/common/templates/runtimes/run-test-job.yml - buildConfig: checked - platforms: - - browser_wasm - helixQueueGroup: pr - helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml - jobParameters: - testGroup: innerloop - liveLibrariesBuildConfig: Release - unifiedArtifactsName: CoreCLR_ReleaseLibraries_BuildArtifacts_$(osGroup)$(osSubgroup)_$(archType)_$(_hostedOs)_$(_BuildConfig) - unifiedBuildNameSuffix: CoreCLR_ReleaseLibraries - useHelixMonitor: ${{ variables.enableHelixJobMonitor }} - extraBuildArgs: -os browser -p:HostConfiguration=Release - condition: >- - or( - eq(variables['wasmDarcDependenciesChanged'], true), - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_coreclr.containsChange'], true), - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_runtimetests.containsChange'], true), - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_tools_illink.containsChange'], true), - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_wasm_coreclr_runtimetests.containsChange'], true), - eq(variables['isRollingBuild'], true)) - - - template: /eng/pipelines/common/platform-matrix.yml - parameters: - jobTemplate: /eng/pipelines/common/templates/runtimes/run-test-job.yml - buildConfig: checked - platforms: - - browser_wasm - helixQueueGroup: pr - helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml - jobParameters: - testGroup: innerloop - readyToRun: true - displayNameArgs: R2R_CG2 - liveLibrariesBuildConfig: Release - unifiedArtifactsName: CoreCLR_ReleaseLibraries_BuildArtifacts_$(osGroup)$(osSubgroup)_$(archType)_$(_hostedOs)_$(_BuildConfig) - unifiedBuildNameSuffix: CoreCLR_ReleaseLibraries - useHelixMonitor: ${{ variables.enableHelixJobMonitor }} - extraBuildArgs: -os browser -p:HostConfiguration=Release - condition: >- - or( - eq(variables['wasmDarcDependenciesChanged'], true), - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_coreclr.containsChange'], true), - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_runtimetests.containsChange'], true), - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_tools_illink.containsChange'], true), - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_wasm_coreclr_runtimetests.containsChange'], true), - eq(variables['isRollingBuild'], true)) - - - template: /eng/pipelines/common/platform-matrix.yml - parameters: - jobTemplate: /eng/pipelines/common/templates/runtimes/run-test-job.yml - buildConfig: checked - platforms: - - osx_arm64 - - osx_x64 - - linux_x64 - - linux_arm64 - - windows_x64 - helixQueueGroup: pr - helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml - jobParameters: - testGroup: innerloop - liveLibrariesBuildConfig: ${{ variables.debugOnPrReleaseOnRolling }} - unifiedArtifactsName: Libraries_CheckedCoreCLR_BuildArtifacts_$(osGroup)$(osSubgroup)_$(archType)_$(debugOnPrReleaseOnRolling) - unifiedBuildNameSuffix: Libraries_CheckedCoreCLR - unifiedBuildConfigOverride: ${{ variables.debugOnPrReleaseOnRolling }} - useHelixMonitor: ${{ variables.enableHelixJobMonitor }} - condition: >- - or( - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_coreclr.containsChange'], true), - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_runtimetests.containsChange'], true), - eq(variables['isRollingBuild'], true)) - # # Build and test Mono Interpreter with the libraries testss #