From 06a4a73ed2560df771e782568267d14364001461 Mon Sep 17 00:00:00 2001 From: Jackson Schuster <36744439+jtschuster@users.noreply.github.com> Date: Wed, 8 Jul 2026 10:57:51 -0700 Subject: [PATCH 1/2] Consolidate crossgen2-composite into crossgen2-outerloop pipeline Fold the composite-mode coverage that was unique to the crossgen2-composite pipeline into the crossgen2-outerloop pipeline, and stop running crossgen2-composite on a daily schedule. - Add linux_arm and windows_x86 to the R2R_Composite job in outerloop. - Add an R2R_Composite_LargeVersionBubble job (linux_x64, windows_x64) to outerloop. - Remove the daily cron schedule from crossgen2-composite; it can still be invoked manually to validate a change. The outerloop pipeline already builds the same Checked runtime and runs composite mode on the shared platforms at Pri1, so the daily crossgen2-composite run was largely duplicated work. Moving the remaining unique configurations into outerloop keeps coverage (now at Pri1) while eliminating the redundant daily run. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> --- eng/pipelines/coreclr/crossgen2-composite.yml | 8 -------- eng/pipelines/coreclr/crossgen2-outerloop.yml | 20 +++++++++++++++++++ 2 files changed, 20 insertions(+), 8 deletions(-) diff --git a/eng/pipelines/coreclr/crossgen2-composite.yml b/eng/pipelines/coreclr/crossgen2-composite.yml index 23bb12d4af4d8f..493dcf1a3cdd8d 100644 --- a/eng/pipelines/coreclr/crossgen2-composite.yml +++ b/eng/pipelines/coreclr/crossgen2-composite.yml @@ -1,13 +1,5 @@ trigger: none -schedules: -- cron: "0 6 * * *" - displayName: Mon through Sun at 10:00 PM (UTC-8:00) - branches: - include: - - main - always: true - variables: - template: /eng/pipelines/common/variables.yml - template: /eng/pipelines/helix-platforms.yml diff --git a/eng/pipelines/coreclr/crossgen2-outerloop.yml b/eng/pipelines/coreclr/crossgen2-outerloop.yml index eabaa7f34d5add..9dd5e7ec191c44 100644 --- a/eng/pipelines/coreclr/crossgen2-outerloop.yml +++ b/eng/pipelines/coreclr/crossgen2-outerloop.yml @@ -66,10 +66,12 @@ extends: helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml buildConfig: checked platforms: + - linux_arm - linux_x64 - linux_arm64 - osx_arm64 - osx_x64 + - windows_x86 - windows_x64 - windows_arm64 jobParameters: @@ -80,6 +82,24 @@ extends: liveLibrariesBuildConfig: Release unifiedArtifactsName: Checked_CoreCLR_$(osGroup)$(osSubgroup)_$(archType)_$(_BuildConfig) + # Composite mode with large version bubble (inputbubble) + - template: /eng/pipelines/common/platform-matrix.yml + parameters: + jobTemplate: /eng/pipelines/common/templates/runtimes/run-test-job.yml + helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml + buildConfig: checked + platforms: + - linux_x64 + - windows_x64 + jobParameters: + testGroup: outerloop + readyToRun: true + compositeBuildMode: true + largeVersionBubble: true + displayNameArgs: R2R_Composite_LargeVersionBubble + liveLibrariesBuildConfig: Release + unifiedArtifactsName: Checked_CoreCLR_$(osGroup)$(osSubgroup)_$(archType)_$(_BuildConfig) + # Outerloop testing in non-composite mode - template: /eng/pipelines/common/platform-matrix.yml parameters: From 75e1fc5073dd52a4301fc4318f67a65390638023 Mon Sep 17 00:00:00 2001 From: Jackson Schuster <36744439+jtschuster@users.noreply.github.com> Date: Wed, 8 Jul 2026 12:59:59 -0700 Subject: [PATCH 2/2] Delete redundant runtime-coreclr r2r pipeline The standalone crossgen2 r2r pipeline (eng/pipelines/coreclr/r2r.yml) runs the non-composite ReadyToRun coreclr test suite at Pri1 (testGroup: outerloop). The crossgen2-outerloop pipeline already runs an identical non-composite R2R job on the same daily schedule, on a strict superset of platforms (it additionally covers osx_x64). Verified empirically that the Helix work-item sets are identical on the shared platforms (e.g. linux_x64 and windows_x64 each produced the exact same 90/91 work items on the same queues), so r2r.yml provides no unique coverage. Note: the ADO pipeline definition (runtime-coreclr r2r) points at this YAML path and must be removed/disabled by infra as a follow-up, or it will fail once the file is gone. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> --- eng/pipelines/coreclr/r2r.yml | 80 ----------------------------------- 1 file changed, 80 deletions(-) delete mode 100644 eng/pipelines/coreclr/r2r.yml diff --git a/eng/pipelines/coreclr/r2r.yml b/eng/pipelines/coreclr/r2r.yml deleted file mode 100644 index 8ed90b3ddfec1e..00000000000000 --- a/eng/pipelines/coreclr/r2r.yml +++ /dev/null @@ -1,80 +0,0 @@ -trigger: none - -schedules: -- cron: "0 5 * * *" - displayName: Mon through Sun at 9:00 PM (UTC-8:00) - branches: - include: - - main - always: true - -variables: - - template: /eng/pipelines/common/variables.yml - - template: /eng/pipelines/helix-platforms.yml - -extends: - template: /eng/pipelines/common/templates/pipeline-with-resources.yml - parameters: - stages: - - stage: Build - jobs: - - - template: /eng/pipelines/common/platform-matrix.yml - parameters: - jobTemplate: /eng/pipelines/common/global-build-job.yml - buildConfig: checked - platforms: - - linux_arm - - linux_arm64 - - linux_x64 - - osx_arm64 - - windows_arm64 - - windows_x64 - - windows_x86 - jobParameters: - buildArgs: -s clr+libs -c $(_BuildConfig) -lc Release - 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 - includeRootFolder: false - archiveType: $(archiveType) - archiveExtension: $(archiveExtension) - tarCompression: $(tarCompression) - artifactName: BuildArtifacts_$(osGroup)$(osSubgroup)_$(archType)_$(_BuildConfig) - displayName: Build Assets - extraVariablesTemplates: - - template: /eng/pipelines/common/templates/runtimes/native-test-assets-variables.yml - parameters: - testGroup: outerloop - - - 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: outerloop - - - template: /eng/pipelines/common/platform-matrix.yml - parameters: - jobTemplate: /eng/pipelines/common/templates/runtimes/run-test-job.yml - buildConfig: checked - platforms: - - linux_arm - - linux_arm64 - - linux_x64 - - osx_arm64 - - windows_arm64 - - windows_x64 - - windows_x86 - helixQueueGroup: ci - helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml - jobParameters: - testGroup: outerloop - readyToRun: true - displayNameArgs: R2R - liveLibrariesBuildConfig: Release - unifiedArtifactsName: BuildArtifacts_$(osGroup)$(osSubgroup)_$(archType)_$(_BuildConfig)