* Remove single-stage-pipeline-with-resources.yml, use only pipeline-with-resources.yml
This reduces nesting of the pipeline templates.
* Remove file
+++ /dev/null
-parameters:
- - name: jobs
- type: jobList
-
-extends:
- template: pipeline-with-resources.yml
- parameters:
- stages:
- - stage: Build
- jobs: ${{ parameters.jobs }}
always: false # run only if there were changes since the last successful scheduled run.
extends:
- template: /eng/pipelines/common/templates/single-stage-pipeline-with-resources.yml
+ template: /eng/pipelines/common/templates/pipeline-with-resources.yml
parameters:
- jobs:
+ stages:
+ - stage: Build
+ jobs:
- #
- # Debug builds
- #
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/coreclr/templates/build-job.yml
- buildConfig: debug
- platforms:
- - Linux_arm
- - Linux_arm64
- - Linux_musl_arm64
- - Linux_musl_x64
- - Linux_x64
- - OSX_arm64
- - OSX_x64
- - windows_arm
- - windows_arm64
- jobParameters:
- testGroup: outerloop
-
- #
- # Checked builds
- #
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/coreclr/templates/build-job.yml
- buildConfig: checked
- platformGroup: all
- platforms:
- # It is too early to include OSX_arm64 in platform group all
- # Adding it here will enable it also
- - OSX_arm64
- jobParameters:
- testGroup: outerloop
+ #
+ # Debug builds
+ #
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/coreclr/templates/build-job.yml
+ buildConfig: debug
+ platforms:
+ - Linux_arm
+ - Linux_arm64
+ - Linux_musl_arm64
+ - Linux_musl_x64
+ - Linux_x64
+ - OSX_arm64
+ - OSX_x64
+ - windows_arm
+ - windows_arm64
+ jobParameters:
+ testGroup: outerloop
- #
- # Release builds
- #
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/coreclr/templates/build-job.yml
- buildConfig: release
- platforms:
- - Linux_arm
- - Linux_musl_arm64
- - Linux_x64
- - OSX_arm64
- - OSX_x64
- - windows_x86
- jobParameters:
- testGroup: outerloop
+ #
+ # Checked builds
+ #
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/coreclr/templates/build-job.yml
+ buildConfig: checked
+ platformGroup: all
+ platforms:
+ # It is too early to include OSX_arm64 in platform group all
+ # Adding it here will enable it also
+ - OSX_arm64
+ jobParameters:
+ testGroup: outerloop
- #
- # Release library builds
- #
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/libraries/build-job.yml
- buildConfig: Release
- platformGroup: all
- platforms:
- # It is too early to include OSX_arm64 in platform group all
- # Adding it here will enable it also
- - OSX_arm64
- jobParameters:
- isOfficialBuild: false
- liveRuntimeBuildConfig: checked
+ #
+ # Release builds
+ #
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/coreclr/templates/build-job.yml
+ buildConfig: release
+ platforms:
+ - Linux_arm
+ - Linux_musl_arm64
+ - Linux_x64
+ - OSX_arm64
+ - OSX_x64
+ - windows_x86
+ jobParameters:
+ testGroup: outerloop
- #
- # Checked test builds
- #
- - 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
- testGroup: outerloop
+ #
+ # Release library builds
+ #
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/libraries/build-job.yml
+ buildConfig: Release
+ platformGroup: all
+ platforms:
+ # It is too early to include OSX_arm64 in platform group all
+ # Adding it here will enable it also
+ - OSX_arm64
+ jobParameters:
+ isOfficialBuild: false
+ liveRuntimeBuildConfig: checked
- #
- # Checked JIT test runs
- #
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/common/templates/runtimes/run-test-job.yml
- buildConfig: checked
- platformGroup: all
- platforms:
- # It is too early to include OSX_arm64 in platform group all
- # Adding it here will enable it to also run this test
- - OSX_arm64
- helixQueueGroup: ci
- helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
- jobParameters:
+ #
+ # Checked test builds
+ #
+ - 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
testGroup: outerloop
- liveLibrariesBuildConfig: Release
- #
- # Checked R2R test runs
- #
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/common/templates/runtimes/run-test-job.yml
- buildConfig: checked
- platforms:
- - Linux_arm64
- - Linux_musl_x64
- - Linux_musl_arm64
- - Linux_x64
- - OSX_x64
- - windows_x64
- - windows_x86
- - windows_arm
- - windows_arm64
- helixQueueGroup: ci
- helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
- jobParameters:
- testGroup: outerloop
- readyToRun: true
- displayNameArgs: R2R_CG2
- liveLibrariesBuildConfig: Release
+ #
+ # Checked JIT test runs
+ #
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/common/templates/runtimes/run-test-job.yml
+ buildConfig: checked
+ platformGroup: all
+ platforms:
+ # It is too early to include OSX_arm64 in platform group all
+ # Adding it here will enable it to also run this test
+ - OSX_arm64
+ helixQueueGroup: ci
+ helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
+ jobParameters:
+ testGroup: outerloop
+ liveLibrariesBuildConfig: Release
+
+ #
+ # Checked R2R test runs
+ #
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/common/templates/runtimes/run-test-job.yml
+ buildConfig: checked
+ platforms:
+ - Linux_arm64
+ - Linux_musl_x64
+ - Linux_musl_arm64
+ - Linux_x64
+ - OSX_x64
+ - windows_x64
+ - windows_x86
+ - windows_arm
+ - windows_arm64
+ helixQueueGroup: ci
+ helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
+ jobParameters:
+ testGroup: outerloop
+ readyToRun: true
+ displayNameArgs: R2R_CG2
+ liveLibrariesBuildConfig: Release
- #
- # Formatting
- #
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/coreclr/templates/format-job.yml
- platforms:
- - Linux_x64
- - windows_x64
+ #
+ # Formatting
+ #
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/coreclr/templates/format-job.yml
+ platforms:
+ - Linux_x64
+ - windows_x64
# always: true
extends:
- template: /eng/pipelines/common/templates/single-stage-pipeline-with-resources.yml
+ template: /eng/pipelines/common/templates/pipeline-with-resources.yml
parameters:
- jobs:
+ stages:
+ - stage: Build
+ jobs:
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/common/build-coreclr-and-libraries-job.yml
- buildConfig: checked
- platforms:
- - Linux_arm
- - Linux_arm64
- - Linux_x64
- - windows_x64
- - windows_x86
- - windows_arm64
- - CoreClrTestBuildHost # Either OSX_x64 or Linux_x64
- jobParameters:
- testGroup: clrinterpreter
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/common/build-coreclr-and-libraries-job.yml
+ buildConfig: checked
+ platforms:
+ - Linux_arm
+ - Linux_arm64
+ - Linux_x64
+ - windows_x64
+ - windows_x86
+ - windows_arm64
+ - CoreClrTestBuildHost # Either OSX_x64 or Linux_x64
+ jobParameters:
+ testGroup: clrinterpreter
- - 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: clrinterpreter
+ - 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: clrinterpreter
- - 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
- - windows_x64
- - windows_x86
- - windows_arm64
- helixQueueGroup: ci
- helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
- jobParameters:
- testGroup: clrinterpreter
- liveLibrariesBuildConfig: Release
+ - 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
+ - windows_x64
+ - windows_x86
+ - windows_arm64
+ helixQueueGroup: ci
+ helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
+ jobParameters:
+ testGroup: clrinterpreter
+ liveLibrariesBuildConfig: Release
always: true
extends:
- template: /eng/pipelines/common/templates/single-stage-pipeline-with-resources.yml
+ template: /eng/pipelines/common/templates/pipeline-with-resources.yml
parameters:
- jobs:
+ stages:
+ - stage: Build
+ jobs:
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/common/build-coreclr-and-libraries-job.yml
- buildConfig: checked
- platforms:
- - Linux_arm
- - Linux_x64
- - Linux_arm64
- - OSX_arm64
- - OSX_x64
- - windows_x86
- - windows_x64
- - windows_arm64
- - CoreClrTestBuildHost # Either OSX_x64 or Linux_x64
- jobParameters:
- testGroup: innerloop
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/common/build-coreclr-and-libraries-job.yml
+ buildConfig: checked
+ platforms:
+ - Linux_arm
+ - Linux_x64
+ - Linux_arm64
+ - OSX_arm64
+ - OSX_x64
+ - windows_x86
+ - windows_x64
+ - windows_arm64
+ - CoreClrTestBuildHost # Either OSX_x64 or Linux_x64
+ jobParameters:
+ testGroup: innerloop
- - 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
+ - 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
- - 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_arm
- - Linux_x64
- - Linux_arm64
- - OSX_arm64
- - OSX_x64
- - windows_x86
- - windows_x64
- - windows_arm64
- jobParameters:
- testGroup: innerloop
- readyToRun: true
- compositeBuildMode: true
- displayNameArgs: Composite
- liveLibrariesBuildConfig: Release
+ - 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_arm
+ - Linux_x64
+ - Linux_arm64
+ - OSX_arm64
+ - OSX_x64
+ - windows_x86
+ - windows_x64
+ - windows_arm64
+ jobParameters:
+ testGroup: innerloop
+ readyToRun: true
+ compositeBuildMode: true
+ displayNameArgs: Composite
+ liveLibrariesBuildConfig: Release
always: true
extends:
- template: /eng/pipelines/common/templates/single-stage-pipeline-with-resources.yml
+ template: /eng/pipelines/common/templates/pipeline-with-resources.yml
parameters:
- jobs:
+ stages:
+ - stage: Build
+ jobs:
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/common/build-coreclr-and-libraries-job.yml
- buildConfig: checked
- platforms:
- - Linux_x64
- - Linux_arm64
- - OSX_arm64
- # See https://github.com/dotnet/runtime/issues/71931
- # - OSX_x64
- - windows_x64
- - windows_arm64
- - CoreClrTestBuildHost # Either OSX_x64 or Linux_x64
- jobParameters:
- testGroup: gcstress-extra
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/common/build-coreclr-and-libraries-job.yml
+ buildConfig: checked
+ platforms:
+ - Linux_x64
+ - Linux_arm64
+ - OSX_arm64
+ # See https://github.com/dotnet/runtime/issues/71931
+ # - OSX_x64
+ - windows_x64
+ - windows_arm64
+ - CoreClrTestBuildHost # Either OSX_x64 or Linux_x64
+ jobParameters:
+ testGroup: gcstress-extra
- - 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: gcstress-extra
+ - 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: gcstress-extra
- - 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
- - Linux_arm64
- - OSX_arm64
- # See https://github.com/dotnet/runtime/issues/71931
- # - OSX_x64
- - windows_x64
- - windows_arm64
- jobParameters:
- testGroup: gcstress-extra
- readyToRun: true
- compositeBuildMode: true
- displayNameArgs: Composite
- liveLibrariesBuildConfig: Release
+ - 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
+ - Linux_arm64
+ - OSX_arm64
+ # See https://github.com/dotnet/runtime/issues/71931
+ # - OSX_x64
+ - windows_x64
+ - windows_arm64
+ jobParameters:
+ testGroup: gcstress-extra
+ readyToRun: true
+ compositeBuildMode: true
+ displayNameArgs: Composite
+ liveLibrariesBuildConfig: Release
always: true
extends:
- template: /eng/pipelines/common/templates/single-stage-pipeline-with-resources.yml
+ template: /eng/pipelines/common/templates/pipeline-with-resources.yml
parameters:
- jobs:
+ stages:
+ - stage: Build
+ jobs:
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/coreclr/templates/build-job.yml
- buildConfig: checked
- platforms:
- - Linux_arm
- - Linux_x64
- - Linux_arm64
- - OSX_arm64
- - OSX_x64
- - windows_x86
- - windows_x64
- - windows_arm64
- - CoreClrTestBuildHost # Either OSX_x64 or Linux_x64
- jobParameters:
- testGroup: outerloop
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/coreclr/templates/build-job.yml
+ buildConfig: checked
+ platforms:
+ - Linux_arm
+ - Linux_x64
+ - Linux_arm64
+ - OSX_arm64
+ - OSX_x64
+ - windows_x86
+ - windows_x64
+ - windows_arm64
+ - CoreClrTestBuildHost # Either OSX_x64 or Linux_x64
+ jobParameters:
+ testGroup: outerloop
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/coreclr/templates/build-job.yml
- buildConfig: Release
- platforms:
- - Linux_arm
- - Linux_arm64
- - Linux_x64
- - OSX_arm64
- - windows_x86
- - windows_x64
- jobParameters:
- testGroup: outerloop
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/coreclr/templates/build-job.yml
+ buildConfig: Release
+ platforms:
+ - Linux_arm
+ - Linux_arm64
+ - Linux_x64
+ - OSX_arm64
+ - windows_x86
+ - windows_x64
+ jobParameters:
+ testGroup: outerloop
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/libraries/build-job.yml
- buildConfig: Release
- platforms:
- - Linux_arm
- - Linux_arm64
- - Linux_x64
- - OSX_arm64
- - OSX_x64
- - windows_x86
- - windows_x64
- - windows_arm64
- - CoreClrTestBuildHost # Either OSX_x64 or Linux_x64
- jobParameters:
- isOfficialBuild: false
- liveRuntimeBuildConfig: Release
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/libraries/build-job.yml
+ buildConfig: Release
+ platforms:
+ - Linux_arm
+ - Linux_arm64
+ - Linux_x64
+ - OSX_arm64
+ - OSX_x64
+ - windows_x86
+ - windows_x64
+ - windows_arm64
+ - CoreClrTestBuildHost # Either OSX_x64 or Linux_x64
+ jobParameters:
+ isOfficialBuild: false
+ liveRuntimeBuildConfig: Release
- - 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/build-test-job.yml
+ buildConfig: checked
+ platforms:
+ - CoreClrTestBuildHost # Either OSX_x64 or Linux_x64
+ jobParameters:
+ testGroup: outerloop
- # Test most platforms in composite mode as the expected mainline shipping mode
- - 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
- - Linux_arm64
- - OSX_arm64
- - OSX_x64
- - windows_x64
- - windows_arm64
- jobParameters:
- testGroup: outerloop
- readyToRun: true
- compositeBuildMode: true
- displayNameArgs: R2R_Composite
- liveLibrariesBuildConfig: Release
+ # Test most platforms in composite mode as the expected mainline shipping mode
+ - 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
+ - Linux_arm64
+ - OSX_arm64
+ - OSX_x64
+ - windows_x64
+ - windows_arm64
+ jobParameters:
+ testGroup: outerloop
+ readyToRun: true
+ compositeBuildMode: true
+ displayNameArgs: R2R_Composite
+ liveLibrariesBuildConfig: Release
- # Outerloop testing in non-composite mode
- - 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_arm
- - Linux_arm64
- - Linux_x64
- - OSX_x64
- - OSX_arm64
- - windows_arm64
- - windows_x64
- - windows_x86
- jobParameters:
- testGroup: outerloop
- readyToRun: true
- displayNameArgs: R2R
- liveLibrariesBuildConfig: Release
+ # Outerloop testing in non-composite mode
+ - 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_arm
+ - Linux_arm64
+ - Linux_x64
+ - OSX_x64
+ - OSX_arm64
+ - windows_arm64
+ - windows_x64
+ - windows_x86
+ jobParameters:
+ testGroup: outerloop
+ readyToRun: true
+ displayNameArgs: R2R
+ liveLibrariesBuildConfig: Release
- # Build Crossgen2 baselines
- # These are the various crossgen2 targets that are supported, and cover all major
- # significantly different code generators
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/coreclr/templates/crossgen2-comparison-build-job.yml
- buildConfig: Release
- platforms:
- - Linux_arm
- - Linux_arm64
- - Linux_x64
- - OSX_arm64
- - windows_x86
- - windows_x64
- jobParameters:
- testGroup: outerloop
- liveLibrariesBuildConfig: Release
+ # Build Crossgen2 baselines
+ # These are the various crossgen2 targets that are supported, and cover all major
+ # significantly different code generators
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/coreclr/templates/crossgen2-comparison-build-job.yml
+ buildConfig: Release
+ platforms:
+ - Linux_arm
+ - Linux_arm64
+ - Linux_x64
+ - OSX_arm64
+ - windows_x86
+ - windows_x64
+ jobParameters:
+ testGroup: outerloop
+ liveLibrariesBuildConfig: Release
- # test crossgen target Windows X86
- # This job verifies that 32-bit and 64 bit crossgen2 produces the same binaries,
- # and that cross-os targeting works
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/coreclr/templates/crossgen2-comparison-job.yml
- buildConfig: Release
- platforms:
- - Linux_x64
- - windows_x86
- helixQueueGroup: pr
- helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
- jobParameters:
- testGroup: outerloop
- liveLibrariesBuildConfig: Release
- targetos: windows
- targetarch: x86
+ # test crossgen target Windows X86
+ # This job verifies that 32-bit and 64 bit crossgen2 produces the same binaries,
+ # and that cross-os targeting works
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/coreclr/templates/crossgen2-comparison-job.yml
+ buildConfig: Release
+ platforms:
+ - Linux_x64
+ - windows_x86
+ helixQueueGroup: pr
+ helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
+ jobParameters:
+ testGroup: outerloop
+ liveLibrariesBuildConfig: Release
+ targetos: windows
+ targetarch: x86
- # test target Linux X64
- # verify that cross OS targeting works
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/coreclr/templates/crossgen2-comparison-job.yml
- buildConfig: Release
- platforms:
- - windows_x64
- helixQueueGroup: pr
- helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
- jobParameters:
- testGroup: outerloop
- liveLibrariesBuildConfig: Release
- targetos: Linux
- targetarch: x64
+ # test target Linux X64
+ # verify that cross OS targeting works
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/coreclr/templates/crossgen2-comparison-job.yml
+ buildConfig: Release
+ platforms:
+ - windows_x64
+ helixQueueGroup: pr
+ helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
+ jobParameters:
+ testGroup: outerloop
+ liveLibrariesBuildConfig: Release
+ targetos: Linux
+ targetarch: x64
- # test target Windows X64
- # verify that cross OS targeting works
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/coreclr/templates/crossgen2-comparison-job.yml
- buildConfig: Release
- platforms:
- - Linux_x64
- helixQueueGroup: pr
- helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
- jobParameters:
- testGroup: outerloop
- liveLibrariesBuildConfig: Release
- targetos: windows
- targetarch: x64
+ # test target Windows X64
+ # verify that cross OS targeting works
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/coreclr/templates/crossgen2-comparison-job.yml
+ buildConfig: Release
+ platforms:
+ - Linux_x64
+ helixQueueGroup: pr
+ helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
+ jobParameters:
+ testGroup: outerloop
+ liveLibrariesBuildConfig: Release
+ targetos: windows
+ targetarch: x64
- # test target Linux arm
- # verify that cross architecture targeting works
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/coreclr/templates/crossgen2-comparison-job.yml
- buildConfig: Release
- platforms:
- - Linux_arm
- helixQueueGroup: pr
- helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
- jobParameters:
- testGroup: outerloop
- liveLibrariesBuildConfig: Release
- targetos: Linux
- targetarch: arm
+ # test target Linux arm
+ # verify that cross architecture targeting works
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/coreclr/templates/crossgen2-comparison-job.yml
+ buildConfig: Release
+ platforms:
+ - Linux_arm
+ helixQueueGroup: pr
+ helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
+ jobParameters:
+ testGroup: outerloop
+ liveLibrariesBuildConfig: Release
+ targetos: Linux
+ targetarch: arm
- # test target Linux arm64
- # verify that cross architecture targeting works
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/coreclr/templates/crossgen2-comparison-job.yml
- buildConfig: Release
- platforms:
- - Linux_arm64
- helixQueueGroup: pr
- helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
- jobParameters:
- testGroup: outerloop
- liveLibrariesBuildConfig: Release
- targetos: Linux
- targetarch: arm64
+ # test target Linux arm64
+ # verify that cross architecture targeting works
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/coreclr/templates/crossgen2-comparison-job.yml
+ buildConfig: Release
+ platforms:
+ - Linux_arm64
+ helixQueueGroup: pr
+ helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
+ jobParameters:
+ testGroup: outerloop
+ liveLibrariesBuildConfig: Release
+ targetos: Linux
+ targetarch: arm64
- # test target osx-arm64
- # verify that cross architecture targeting works
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/coreclr/templates/crossgen2-comparison-job.yml
- buildConfig: Release
- platforms:
- - OSX_arm64
- helixQueueGroup: pr
- helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
- jobParameters:
- testGroup: outerloop
- liveLibrariesBuildConfig: Release
- targetos: OSX
- targetarch: arm64
+ # test target osx-arm64
+ # verify that cross architecture targeting works
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/coreclr/templates/crossgen2-comparison-job.yml
+ buildConfig: Release
+ platforms:
+ - OSX_arm64
+ helixQueueGroup: pr
+ helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
+ jobParameters:
+ testGroup: outerloop
+ liveLibrariesBuildConfig: Release
+ targetos: OSX
+ targetarch: arm64
always: true
extends:
- template: /eng/pipelines/common/templates/single-stage-pipeline-with-resources.yml
+ template: /eng/pipelines/common/templates/pipeline-with-resources.yml
parameters:
- jobs:
+ stages:
+ - stage: Build
+ jobs:
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/common/build-coreclr-and-libraries-job.yml
- buildConfig: checked
- platforms:
- - Linux_x64
- - Linux_arm64
- - OSX_arm64
- - OSX_x64
- - windows_x64
- - windows_arm64
- - CoreClrTestBuildHost # Either OSX_x64 or Linux_x64
- jobParameters:
- testGroup: innerloop
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/common/build-coreclr-and-libraries-job.yml
+ buildConfig: checked
+ platforms:
+ - Linux_x64
+ - Linux_arm64
+ - OSX_arm64
+ - OSX_x64
+ - windows_x64
+ - windows_arm64
+ - CoreClrTestBuildHost # Either OSX_x64 or Linux_x64
+ jobParameters:
+ testGroup: innerloop
- - 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
+ - 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
- - 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
- - Linux_arm64
- - OSX_arm64
- - OSX_x64
- - windows_x64
- - windows_arm64
- jobParameters:
- testGroup: innerloop
- readyToRun: true
- displayNameArgs: R2R_CG2
- liveLibrariesBuildConfig: Release
+ - 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
+ - Linux_arm64
+ - OSX_arm64
+ - OSX_x64
+ - windows_x64
+ - windows_arm64
+ jobParameters:
+ testGroup: innerloop
+ readyToRun: true
+ displayNameArgs: R2R_CG2
+ liveLibrariesBuildConfig: Release
value: ${{ variables['Build.DefinitionName'] }}
extends:
- template: /eng/pipelines/common/templates/single-stage-pipeline-with-resources.yml
+ template: /eng/pipelines/common/templates/pipeline-with-resources.yml
parameters:
- jobs:
+ stages:
+ - stage: Build
+ jobs:
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/common/build-coreclr-and-libraries-job.yml
- buildConfig: checked
- platforms:
- # Linux tests are built on the OSX machines.
- - Linux_arm
- - Linux_arm64
- - Linux_x64
- - windows_x64
- - windows_x86
- - windows_arm64
- - OSX_arm64
- - CoreClrTestBuildHost # Either OSX_x64 or Linux_x64
- jobParameters:
- testGroup: outerloop
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/common/build-coreclr-and-libraries-job.yml
+ buildConfig: checked
+ platforms:
+ # Linux tests are built on the OSX machines.
+ - Linux_arm
+ - Linux_arm64
+ - Linux_x64
+ - windows_x64
+ - windows_x86
+ - windows_arm64
+ - OSX_arm64
+ - CoreClrTestBuildHost # Either OSX_x64 or Linux_x64
+ jobParameters:
+ testGroup: outerloop
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/coreclr/templates/jit-exploratory-job.yml
- buildConfig: checked
- platforms:
- # Linux tests are built on the OSX machines.
- - Linux_arm
- - Linux_arm64
- - Linux_x64
- - windows_x64
- - windows_x86
- - windows_arm64
- - OSX_arm64
- helixQueueGroup: ci
- helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
- jobParameters:
- testGroup: outerloop
- liveLibrariesBuildConfig: Release
- toolName: ${{ variables.toolName }}
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/coreclr/templates/jit-exploratory-job.yml
+ buildConfig: checked
+ platforms:
+ # Linux tests are built on the OSX machines.
+ - Linux_arm
+ - Linux_arm64
+ - Linux_x64
+ - windows_x64
+ - windows_x86
+ - windows_arm64
+ - OSX_arm64
+ helixQueueGroup: ci
+ helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
+ jobParameters:
+ testGroup: outerloop
+ liveLibrariesBuildConfig: Release
+ toolName: ${{ variables.toolName }}
always: true
extends:
- template: /eng/pipelines/common/templates/single-stage-pipeline-with-resources.yml
+ template: /eng/pipelines/common/templates/pipeline-with-resources.yml
parameters:
- jobs:
+ stages:
+ - stage: Build
+ jobs:
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/common/build-coreclr-and-libraries-job.yml
- buildConfig: release
- platforms:
- - Linux_x64
- - Linux_arm64
- - windows_x64
- - windows_arm64
- - OSX_x64
- - CoreClrTestBuildHost # Either OSX_x64 or Linux_x64
- jobParameters:
- testGroup: gc-longrunning
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/common/build-coreclr-and-libraries-job.yml
+ buildConfig: release
+ platforms:
+ - Linux_x64
+ - Linux_arm64
+ - windows_x64
+ - windows_arm64
+ - OSX_x64
+ - CoreClrTestBuildHost # Either OSX_x64 or Linux_x64
+ jobParameters:
+ testGroup: gc-longrunning
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/common/templates/runtimes/build-test-job.yml
- buildConfig: release
- platforms:
- - CoreClrTestBuildHost # Either OSX_x64 or Linux_x64
- jobParameters:
- testGroup: gc-longrunning
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/common/templates/runtimes/build-test-job.yml
+ buildConfig: release
+ platforms:
+ - CoreClrTestBuildHost # Either OSX_x64 or Linux_x64
+ jobParameters:
+ testGroup: gc-longrunning
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/common/templates/runtimes/run-test-job.yml
- buildConfig: release
- platforms:
- - Linux_x64
- - Linux_arm64
- - windows_x64
- - windows_arm64
- helixQueueGroup: ci
- helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
- jobParameters:
- testGroup: gc-longrunning
- liveLibrariesBuildConfig: Release
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/common/templates/runtimes/run-test-job.yml
+ buildConfig: release
+ platforms:
+ - Linux_x64
+ - Linux_arm64
+ - windows_x64
+ - windows_arm64
+ helixQueueGroup: ci
+ helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
+ jobParameters:
+ testGroup: gc-longrunning
+ liveLibrariesBuildConfig: Release
always: true
extends:
- template: /eng/pipelines/common/templates/single-stage-pipeline-with-resources.yml
+ template: /eng/pipelines/common/templates/pipeline-with-resources.yml
parameters:
- jobs:
+ stages:
+ - stage: Build
+ jobs:
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/common/build-coreclr-and-libraries-job.yml
- buildConfig: release
- platforms:
- # disable Linux x64 for now until OOMs are resolved.
- # - Linux_x64
- - Linux_arm64
- - windows_x64
- - windows_arm64
- - OSX_x64
- - CoreClrTestBuildHost # Either OSX_x64 or Linux_x64
- jobParameters:
- testGroup: gc-simulator
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/common/build-coreclr-and-libraries-job.yml
+ buildConfig: release
+ platforms:
+ # disable Linux x64 for now until OOMs are resolved.
+ # - Linux_x64
+ - Linux_arm64
+ - windows_x64
+ - windows_arm64
+ - OSX_x64
+ - CoreClrTestBuildHost # Either OSX_x64 or Linux_x64
+ jobParameters:
+ testGroup: gc-simulator
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/common/templates/runtimes/build-test-job.yml
- buildConfig: release
- platforms:
- - CoreClrTestBuildHost # Either OSX_x64 or Linux_x64
- jobParameters:
- testGroup: gc-simulator
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/common/templates/runtimes/build-test-job.yml
+ buildConfig: release
+ platforms:
+ - CoreClrTestBuildHost # Either OSX_x64 or Linux_x64
+ jobParameters:
+ testGroup: gc-simulator
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/common/templates/runtimes/run-test-job.yml
- buildConfig: release
- platforms:
- # disable Linux x64 for now until OOMs are resolved.
- # - Linux_x64
- - Linux_arm64
- - windows_x64
- - windows_arm64
- helixQueueGroup: ci
- helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
- jobParameters:
- testGroup: gc-simulator
- liveLibrariesBuildConfig: Release
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/common/templates/runtimes/run-test-job.yml
+ buildConfig: release
+ platforms:
+ # disable Linux x64 for now until OOMs are resolved.
+ # - Linux_x64
+ - Linux_arm64
+ - windows_x64
+ - windows_arm64
+ helixQueueGroup: ci
+ helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
+ jobParameters:
+ testGroup: gc-simulator
+ liveLibrariesBuildConfig: Release
always: true
extends:
- template: /eng/pipelines/common/templates/single-stage-pipeline-with-resources.yml
+ template: /eng/pipelines/common/templates/pipeline-with-resources.yml
parameters:
- jobs:
+ stages:
+ - stage: Build
+ jobs:
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/common/build-coreclr-and-libraries-job.yml
- buildConfig: checked
- platforms:
- - Linux_arm64
- - windows_arm64
- - windows_x64
- - CoreClrTestBuildHost # Either OSX_x64 or Linux_x64
- jobParameters:
- testGroup: gc-standalone
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/common/build-coreclr-and-libraries-job.yml
+ buildConfig: checked
+ platforms:
+ - Linux_arm64
+ - windows_arm64
+ - windows_x64
+ - CoreClrTestBuildHost # Either OSX_x64 or Linux_x64
+ jobParameters:
+ testGroup: gc-standalone
- - 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: gc-standalone
+ - 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: gc-standalone
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/common/templates/runtimes/run-test-job.yml
- buildConfig: checked
- platforms:
- - Linux_arm64
- - Linux_x64
- - windows_arm64
- - windows_x64
- helixQueueGroup: ci
- helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
- jobParameters:
- testGroup: gc-standalone
- displayNameArgs: GCStandAlone
- liveLibrariesBuildConfig: Release
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/common/templates/runtimes/run-test-job.yml
+ buildConfig: checked
+ platforms:
+ - Linux_arm64
+ - Linux_x64
+ - windows_arm64
+ - windows_x64
+ helixQueueGroup: ci
+ helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
+ jobParameters:
+ testGroup: gc-standalone
+ displayNameArgs: GCStandAlone
+ liveLibrariesBuildConfig: Release
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/common/templates/runtimes/run-test-job.yml
- buildConfig: checked
- platforms:
- - Linux_arm64
- - Linux_x64
- - windows_arm64
- - windows_x64
- helixQueueGroup: ci
- helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
- jobParameters:
- testGroup: gc-standalone-server
- displayNameArgs: GCStandAloneServer
- liveLibrariesBuildConfig: Release
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/common/templates/runtimes/run-test-job.yml
+ buildConfig: checked
+ platforms:
+ - Linux_arm64
+ - Linux_x64
+ - windows_arm64
+ - windows_x64
+ helixQueueGroup: ci
+ helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
+ jobParameters:
+ testGroup: gc-standalone-server
+ displayNameArgs: GCStandAloneServer
+ liveLibrariesBuildConfig: Release
always: true
extends:
- template: /eng/pipelines/common/templates/single-stage-pipeline-with-resources.yml
+ template: /eng/pipelines/common/templates/pipeline-with-resources.yml
parameters:
- jobs:
+ stages:
+ - stage: Build
+ jobs:
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/common/build-coreclr-and-libraries-job.yml
- buildConfig: checked
- platformGroup: gcstress
- platforms:
- # It is too early to include OSX_arm64 in platform group gcstress
- # Adding it here will enable it also
- - OSX_arm64
- - CoreClrTestBuildHost # Either OSX_x64 or Linux_x64
- jobParameters:
- testGroup: gcstress-extra
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/common/build-coreclr-and-libraries-job.yml
+ buildConfig: checked
+ platformGroup: gcstress
+ platforms:
+ # It is too early to include OSX_arm64 in platform group gcstress
+ # Adding it here will enable it also
+ - OSX_arm64
+ - CoreClrTestBuildHost # Either OSX_x64 or Linux_x64
+ jobParameters:
+ testGroup: gcstress-extra
- - 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: gcstress-extra
+ - 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: gcstress-extra
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/common/templates/runtimes/run-test-job.yml
- buildConfig: checked
- platformGroup: gcstress
- platforms:
- # It is too early to include OSX_arm64 in platform group gcstress
- # Adding it here will enable it also
- - OSX_arm64
- helixQueueGroup: ci
- helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
- jobParameters:
- testGroup: gcstress-extra
- liveLibrariesBuildConfig: Release
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/common/templates/runtimes/run-test-job.yml
+ buildConfig: checked
+ platformGroup: gcstress
+ platforms:
+ # It is too early to include OSX_arm64 in platform group gcstress
+ # Adding it here will enable it also
+ - OSX_arm64
+ helixQueueGroup: ci
+ helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
+ jobParameters:
+ testGroup: gcstress-extra
+ liveLibrariesBuildConfig: Release
always: true
extends:
- template: /eng/pipelines/common/templates/single-stage-pipeline-with-resources.yml
+ template: /eng/pipelines/common/templates/pipeline-with-resources.yml
parameters:
- jobs:
+ stages:
+ - stage: Build
+ jobs:
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/common/build-coreclr-and-libraries-job.yml
- buildConfig: checked
- platformGroup: gcstress
- platforms:
- # It is too early to include OSX_arm64 in platform group gcstress
- # Adding it here will enable it also
- - OSX_arm64
- - CoreClrTestBuildHost # Either OSX_x64 or Linux_x64
- jobParameters:
- testGroup: gcstress0x3-gcstress0xc
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/common/build-coreclr-and-libraries-job.yml
+ buildConfig: checked
+ platformGroup: gcstress
+ platforms:
+ # It is too early to include OSX_arm64 in platform group gcstress
+ # Adding it here will enable it also
+ - OSX_arm64
+ - CoreClrTestBuildHost # Either OSX_x64 or Linux_x64
+ jobParameters:
+ testGroup: gcstress0x3-gcstress0xc
- - 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: gcstress0x3-gcstress0xc
+ - 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: gcstress0x3-gcstress0xc
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/common/templates/runtimes/run-test-job.yml
- buildConfig: checked
- platformGroup: gcstress
- platforms:
- # It is too early to include OSX_arm64 in platform group gcstress
- # Adding it here will enable it also
- - OSX_arm64
- helixQueueGroup: ci
- helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
- jobParameters:
- testGroup: gcstress0x3-gcstress0xc
- liveLibrariesBuildConfig: Release
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/common/templates/runtimes/run-test-job.yml
+ buildConfig: checked
+ platformGroup: gcstress
+ platforms:
+ # It is too early to include OSX_arm64 in platform group gcstress
+ # Adding it here will enable it also
+ - OSX_arm64
+ helixQueueGroup: ci
+ helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
+ jobParameters:
+ testGroup: gcstress0x3-gcstress0xc
+ liveLibrariesBuildConfig: Release
always: true
extends:
- template: /eng/pipelines/common/templates/single-stage-pipeline-with-resources.yml
+ template: /eng/pipelines/common/templates/pipeline-with-resources.yml
parameters:
- jobs:
+ stages:
+ - stage: Build
+ jobs:
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/common/build-coreclr-and-libraries-job.yml
- buildConfig: checked
- platforms:
- - OSX_arm64
- - OSX_x64
- - Linux_arm
- - Linux_arm64
- - Linux_x64
- - windows_x64
- - windows_x86
- - windows_arm64
- - CoreClrTestBuildHost # Either OSX_x64 or Linux_x64
- jobParameters:
- testGroup: ilasm
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/common/build-coreclr-and-libraries-job.yml
+ buildConfig: checked
+ platforms:
+ - OSX_arm64
+ - OSX_x64
+ - Linux_arm
+ - Linux_arm64
+ - Linux_x64
+ - windows_x64
+ - windows_x86
+ - windows_arm64
+ - CoreClrTestBuildHost # Either OSX_x64 or Linux_x64
+ jobParameters:
+ testGroup: ilasm
- - 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: ilasm
+ - 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: ilasm
- - 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_arm
- - Linux_arm64
- - Linux_x64
- - windows_x64
- - windows_x86
- - windows_arm64
- helixQueueGroup: ci
- helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
- jobParameters:
- testGroup: ilasm
- liveLibrariesBuildConfig: Release
+ - 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_arm
+ - Linux_arm64
+ - Linux_x64
+ - windows_x64
+ - windows_x86
+ - windows_arm64
+ helixQueueGroup: ci
+ helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
+ jobParameters:
+ testGroup: ilasm
+ liveLibrariesBuildConfig: Release
always: true
extends:
- template: /eng/pipelines/common/templates/single-stage-pipeline-with-resources.yml
+ template: /eng/pipelines/common/templates/pipeline-with-resources.yml
parameters:
- jobs:
+ stages:
+ - stage: Build
+ jobs:
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/common/build-coreclr-and-libraries-job.yml
- buildConfig: checked
- platforms:
- - Linux_arm64
- - Linux_x64
- - windows_arm64
- - windows_x64
- - CoreClrTestBuildHost # Either OSX_x64 or Linux_x64
- jobParameters:
- testGroup: jit-cfg
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/common/build-coreclr-and-libraries-job.yml
+ buildConfig: checked
+ platforms:
+ - Linux_arm64
+ - Linux_x64
+ - windows_arm64
+ - windows_x64
+ - CoreClrTestBuildHost # Either OSX_x64 or Linux_x64
+ jobParameters:
+ testGroup: jit-cfg
- - 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: jit-cfg
+ - 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: jit-cfg
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/common/templates/runtimes/run-test-job.yml
- buildConfig: checked
- platforms:
- - Linux_arm64
- - Linux_x64
- - windows_arm64
- - windows_x64
- helixQueueGroup: ci
- helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
- jobParameters:
- testGroup: jit-cfg
- liveLibrariesBuildConfig: Release
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/common/templates/runtimes/run-test-job.yml
+ buildConfig: checked
+ platforms:
+ - Linux_arm64
+ - Linux_x64
+ - windows_arm64
+ - windows_x64
+ helixQueueGroup: ci
+ helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
+ jobParameters:
+ testGroup: jit-cfg
+ liveLibrariesBuildConfig: Release
always: true
extends:
- template: /eng/pipelines/common/templates/single-stage-pipeline-with-resources.yml
+ template: /eng/pipelines/common/templates/pipeline-with-resources.yml
parameters:
- jobs:
+ stages:
+ - stage: Build
+ jobs:
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/common/build-coreclr-and-libraries-job.yml
- buildConfig: checked
- platforms:
- - OSX_arm64
- - OSX_x64
- - Linux_arm64
- - Linux_x64
- - windows_arm64
- - windows_x64
- - CoreClrTestBuildHost # Either OSX_x64 or Linux_x64
- jobParameters:
- testGroup: jit-experimental
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/common/build-coreclr-and-libraries-job.yml
+ buildConfig: checked
+ platforms:
+ - OSX_arm64
+ - OSX_x64
+ - Linux_arm64
+ - Linux_x64
+ - windows_arm64
+ - windows_x64
+ - CoreClrTestBuildHost # Either OSX_x64 or Linux_x64
+ jobParameters:
+ testGroup: jit-experimental
- - 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: jit-experimental
+ - 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: jit-experimental
- - 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_arm64
- - Linux_x64
- - windows_arm64
- - windows_x64
- helixQueueGroup: ci
- helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
- jobParameters:
- testGroup: jit-experimental
- liveLibrariesBuildConfig: Release
+ - 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_arm64
+ - Linux_x64
+ - windows_arm64
+ - windows_x64
+ helixQueueGroup: ci
+ helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
+ jobParameters:
+ testGroup: jit-experimental
+ liveLibrariesBuildConfig: Release
pr: none
extends:
- template: /eng/pipelines/common/templates/single-stage-pipeline-with-resources.yml
+ template: /eng/pipelines/common/templates/pipeline-with-resources.yml
parameters:
- jobs:
+ stages:
+ - stage: Build
+ jobs:
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/coreclr/templates/build-jit-job.yml
- buildConfig: checked
- platforms:
- - OSX_arm64
- - OSX_x64
- - Linux_arm
- - Linux_arm64
- - Linux_x64
- - windows_x64
- - windows_x86
- - windows_arm64
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/coreclr/templates/build-jit-job.yml
+ buildConfig: checked
+ platforms:
+ - OSX_arm64
+ - OSX_x64
+ - Linux_arm
+ - Linux_arm64
+ - Linux_x64
+ - windows_x64
+ - windows_x86
+ - windows_arm64
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/coreclr/templates/build-jit-job.yml
- buildConfig: release
- platforms:
- - OSX_arm64
- - OSX_x64
- - Linux_arm
- - Linux_arm64
- - Linux_x64
- - windows_x64
- - windows_x86
- - windows_arm64
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/coreclr/templates/build-jit-job.yml
+ buildConfig: release
+ platforms:
+ - OSX_arm64
+ - OSX_x64
+ - Linux_arm
+ - Linux_arm64
+ - Linux_x64
+ - windows_x64
+ - windows_x86
+ - windows_arm64
always: true
extends:
- template: /eng/pipelines/common/templates/single-stage-pipeline-with-resources.yml
+ template: /eng/pipelines/common/templates/pipeline-with-resources.yml
parameters:
- jobs:
+ stages:
+ - stage: Build
+ jobs:
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/common/build-coreclr-and-libraries-job.yml
- buildConfig: checked
- platforms:
- - Linux_arm64
- - OSX_arm64
- - windows_arm64
- - CoreClrTestBuildHost # Either OSX_x64 or Linux_x64
- jobParameters:
- testGroup: jitstress-isas-arm
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/common/build-coreclr-and-libraries-job.yml
+ buildConfig: checked
+ platforms:
+ - Linux_arm64
+ - OSX_arm64
+ - windows_arm64
+ - CoreClrTestBuildHost # Either OSX_x64 or Linux_x64
+ jobParameters:
+ testGroup: jitstress-isas-arm
- - 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: jitstress-isas-arm
+ - 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: jitstress-isas-arm
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/common/templates/runtimes/run-test-job.yml
- buildConfig: checked
- platforms:
- - Linux_arm64
- - OSX_arm64
- - windows_arm64
- helixQueueGroup: ci
- helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
- jobParameters:
- testGroup: jitstress-isas-arm
- liveLibrariesBuildConfig: Release
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/common/templates/runtimes/run-test-job.yml
+ buildConfig: checked
+ platforms:
+ - Linux_arm64
+ - OSX_arm64
+ - windows_arm64
+ helixQueueGroup: ci
+ helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
+ jobParameters:
+ testGroup: jitstress-isas-arm
+ liveLibrariesBuildConfig: Release
always: true
extends:
- template: /eng/pipelines/common/templates/single-stage-pipeline-with-resources.yml
+ template: /eng/pipelines/common/templates/pipeline-with-resources.yml
parameters:
- jobs:
+ stages:
+ - stage: Build
+ jobs:
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/common/build-coreclr-and-libraries-job.yml
- buildConfig: checked
- platforms:
- # Current Linux and OSX x64 pipelines do not have machines which support AVX-512.
- # - Linux_x64
- # - OSX_x64
- - windows_x64
- - windows_x86
- - CoreClrTestBuildHost # Either OSX_x64 or Linux_x64
- jobParameters:
- testGroup: jitstress-isas-avx512
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/common/build-coreclr-and-libraries-job.yml
+ buildConfig: checked
+ platforms:
+ # Current Linux and OSX x64 pipelines do not have machines which support AVX-512.
+ # - Linux_x64
+ # - OSX_x64
+ - windows_x64
+ - windows_x86
+ - CoreClrTestBuildHost # Either OSX_x64 or Linux_x64
+ jobParameters:
+ testGroup: jitstress-isas-avx512
- - 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: jitstress-isas-avx512
+ - 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: jitstress-isas-avx512
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/common/templates/runtimes/run-test-job.yml
- buildConfig: checked
- platforms:
- # Current Linux and OSX x64 pipelines do not have machines which support AVX-512.
- # - Linux_x64
- # - OSX_x64
- - windows_x64
- - windows_x86
- helixQueueGroup: ci
- helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
- jobParameters:
- testGroup: jitstress-isas-avx512
- liveLibrariesBuildConfig: Release
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/common/templates/runtimes/run-test-job.yml
+ buildConfig: checked
+ platforms:
+ # Current Linux and OSX x64 pipelines do not have machines which support AVX-512.
+ # - Linux_x64
+ # - OSX_x64
+ - windows_x64
+ - windows_x86
+ helixQueueGroup: ci
+ helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
+ jobParameters:
+ testGroup: jitstress-isas-avx512
+ liveLibrariesBuildConfig: Release
always: true
extends:
- template: /eng/pipelines/common/templates/single-stage-pipeline-with-resources.yml
+ template: /eng/pipelines/common/templates/pipeline-with-resources.yml
parameters:
- jobs:
+ stages:
+ - stage: Build
+ jobs:
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/common/build-coreclr-and-libraries-job.yml
- buildConfig: checked
- platforms:
- - Linux_x64
- - OSX_x64
- - windows_x64
- - windows_x86
- - CoreClrTestBuildHost # Either OSX_x64 or Linux_x64
- jobParameters:
- testGroup: jitstress-isas-x86
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/common/build-coreclr-and-libraries-job.yml
+ buildConfig: checked
+ platforms:
+ - Linux_x64
+ - OSX_x64
+ - windows_x64
+ - windows_x86
+ - CoreClrTestBuildHost # Either OSX_x64 or Linux_x64
+ jobParameters:
+ testGroup: jitstress-isas-x86
- - 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: jitstress-isas-x86
+ - 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: jitstress-isas-x86
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/common/templates/runtimes/run-test-job.yml
- buildConfig: checked
- platforms:
- - Linux_x64
- - OSX_x64
- - windows_x64
- - windows_x86
- helixQueueGroup: ci
- helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
- jobParameters:
- testGroup: jitstress-isas-x86
- liveLibrariesBuildConfig: Release
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/common/templates/runtimes/run-test-job.yml
+ buildConfig: checked
+ platforms:
+ - Linux_x64
+ - OSX_x64
+ - windows_x64
+ - windows_x86
+ helixQueueGroup: ci
+ helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
+ jobParameters:
+ testGroup: jitstress-isas-x86
+ liveLibrariesBuildConfig: Release
always: true
extends:
- template: /eng/pipelines/common/templates/single-stage-pipeline-with-resources.yml
+ template: /eng/pipelines/common/templates/pipeline-with-resources.yml
parameters:
- jobs:
+ stages:
+ - stage: Build
+ jobs:
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/common/build-coreclr-and-libraries-job.yml
- buildConfig: checked
- platforms:
- - OSX_arm64
- - OSX_x64
- - Linux_arm
- - Linux_arm64
- - Linux_x64
- - windows_x64
- - windows_x86
- - windows_arm64
- - CoreClrTestBuildHost # Either OSX_x64 or Linux_x64
- jobParameters:
- testGroup: jitstress-random
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/common/build-coreclr-and-libraries-job.yml
+ buildConfig: checked
+ platforms:
+ - OSX_arm64
+ - OSX_x64
+ - Linux_arm
+ - Linux_arm64
+ - Linux_x64
+ - windows_x64
+ - windows_x86
+ - windows_arm64
+ - CoreClrTestBuildHost # Either OSX_x64 or Linux_x64
+ jobParameters:
+ testGroup: jitstress-random
- - 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: jitstress-random
+ - 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: jitstress-random
- - 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_arm
- - Linux_arm64
- - Linux_x64
- - windows_x64
- - windows_x86
- - windows_arm64
- helixQueueGroup: ci
- helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
- jobParameters:
- testGroup: jitstress-random
- liveLibrariesBuildConfig: Release
+ - 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_arm
+ - Linux_arm64
+ - Linux_x64
+ - windows_x64
+ - windows_x86
+ - windows_arm64
+ helixQueueGroup: ci
+ helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
+ jobParameters:
+ testGroup: jitstress-random
+ liveLibrariesBuildConfig: Release
always: true
extends:
- template: /eng/pipelines/common/templates/single-stage-pipeline-with-resources.yml
+ template: /eng/pipelines/common/templates/pipeline-with-resources.yml
parameters:
- jobs:
+ stages:
+ - stage: Build
+ jobs:
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/common/build-coreclr-and-libraries-job.yml
- buildConfig: checked
- platforms:
- - OSX_arm64
- - OSX_x64
- - Linux_arm
- - Linux_arm64
- - Linux_x64
- - windows_x64
- - windows_x86
- - windows_arm64
- - CoreClrTestBuildHost # Either OSX_x64 or Linux_x64
- jobParameters:
- testGroup: jitstress
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/common/build-coreclr-and-libraries-job.yml
+ buildConfig: checked
+ platforms:
+ - OSX_arm64
+ - OSX_x64
+ - Linux_arm
+ - Linux_arm64
+ - Linux_x64
+ - windows_x64
+ - windows_x86
+ - windows_arm64
+ - CoreClrTestBuildHost # Either OSX_x64 or Linux_x64
+ jobParameters:
+ testGroup: jitstress
- - 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: jitstress
+ - 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: jitstress
- - 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_arm
- - Linux_arm64
- - Linux_x64
- - windows_x64
- - windows_x86
- - windows_arm64
- helixQueueGroup: ci
- helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
- jobParameters:
- testGroup: jitstress
- liveLibrariesBuildConfig: Release
+ - 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_arm
+ - Linux_arm64
+ - Linux_x64
+ - windows_x64
+ - windows_x86
+ - windows_arm64
+ helixQueueGroup: ci
+ helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
+ jobParameters:
+ testGroup: jitstress
+ liveLibrariesBuildConfig: Release
always: true
extends:
- template: /eng/pipelines/common/templates/single-stage-pipeline-with-resources.yml
+ template: /eng/pipelines/common/templates/pipeline-with-resources.yml
parameters:
- jobs:
+ stages:
+ - stage: Build
+ jobs:
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/common/build-coreclr-and-libraries-job.yml
- buildConfig: checked
- platforms:
- - OSX_arm64
- - OSX_x64
- - Linux_arm
- - Linux_arm64
- - Linux_x64
- - windows_x64
- - windows_x86
- - windows_arm64
- - CoreClrTestBuildHost # Either OSX_x64 or Linux_x64
- jobParameters:
- testGroup: jitstress2-jitstressregs
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/common/build-coreclr-and-libraries-job.yml
+ buildConfig: checked
+ platforms:
+ - OSX_arm64
+ - OSX_x64
+ - Linux_arm
+ - Linux_arm64
+ - Linux_x64
+ - windows_x64
+ - windows_x86
+ - windows_arm64
+ - CoreClrTestBuildHost # Either OSX_x64 or Linux_x64
+ jobParameters:
+ testGroup: jitstress2-jitstressregs
- - 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: checked
+ - 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: checked
- - 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_arm
- - Linux_arm64
- - Linux_x64
- - windows_x64
- - windows_x86
- - windows_arm64
- helixQueueGroup: ci
- helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
- jobParameters:
- testGroup: jitstress2-jitstressregs
- liveLibrariesBuildConfig: Release
+ - 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_arm
+ - Linux_arm64
+ - Linux_x64
+ - windows_x64
+ - windows_x86
+ - windows_arm64
+ helixQueueGroup: ci
+ helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
+ jobParameters:
+ testGroup: jitstress2-jitstressregs
+ liveLibrariesBuildConfig: Release
always: true
extends:
- template: /eng/pipelines/common/templates/single-stage-pipeline-with-resources.yml
+ template: /eng/pipelines/common/templates/pipeline-with-resources.yml
parameters:
- jobs:
+ stages:
+ - stage: Build
+ jobs:
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/common/build-coreclr-and-libraries-job.yml
- buildConfig: checked
- platforms:
- - Linux_x64
- - windows_x64
- - windows_x86
- - CoreClrTestBuildHost # Either OSX_x64 or Linux_x64
- jobParameters:
- testGroup: jitstressregs-x86
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/common/build-coreclr-and-libraries-job.yml
+ buildConfig: checked
+ platforms:
+ - Linux_x64
+ - windows_x64
+ - windows_x86
+ - CoreClrTestBuildHost # Either OSX_x64 or Linux_x64
+ jobParameters:
+ testGroup: jitstressregs-x86
- - 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: jitstressregs-x86
+ - 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: jitstressregs-x86
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/common/templates/runtimes/run-test-job.yml
- buildConfig: checked
- platforms:
- - Linux_x64
- - windows_x64
- - windows_x86
- helixQueueGroup: ci
- helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
- jobParameters:
- testGroup: jitstressregs-x86
- liveLibrariesBuildConfig: Release
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/common/templates/runtimes/run-test-job.yml
+ buildConfig: checked
+ platforms:
+ - Linux_x64
+ - windows_x64
+ - windows_x86
+ helixQueueGroup: ci
+ helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
+ jobParameters:
+ testGroup: jitstressregs-x86
+ liveLibrariesBuildConfig: Release
always: true
extends:
- template: /eng/pipelines/common/templates/single-stage-pipeline-with-resources.yml
+ template: /eng/pipelines/common/templates/pipeline-with-resources.yml
parameters:
- jobs:
+ stages:
+ - stage: Build
+ jobs:
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/common/build-coreclr-and-libraries-job.yml
- buildConfig: checked
- platforms:
- - OSX_arm64
- - OSX_x64
- - Linux_arm
- - Linux_arm64
- - Linux_x64
- - windows_x64
- - windows_x86
- - windows_arm64
- - CoreClrTestBuildHost # Either OSX_x64 or Linux_x64
- jobParameters:
- testGroup: jitstressregs
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/common/build-coreclr-and-libraries-job.yml
+ buildConfig: checked
+ platforms:
+ - OSX_arm64
+ - OSX_x64
+ - Linux_arm
+ - Linux_arm64
+ - Linux_x64
+ - windows_x64
+ - windows_x86
+ - windows_arm64
+ - CoreClrTestBuildHost # Either OSX_x64 or Linux_x64
+ jobParameters:
+ testGroup: jitstressregs
- - 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: jitstressregs
+ - 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: jitstressregs
- - 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_arm
- - Linux_arm64
- - Linux_x64
- - windows_x64
- - windows_x86
- - windows_arm64
- helixQueueGroup: ci
- helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
- jobParameters:
- testGroup: jitstressregs
- liveLibrariesBuildConfig: Release
+ - 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_arm
+ - Linux_arm64
+ - Linux_x64
+ - windows_x64
+ - windows_x86
+ - windows_arm64
+ helixQueueGroup: ci
+ helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
+ jobParameters:
+ testGroup: jitstressregs
+ liveLibrariesBuildConfig: Release
# always: true
extends:
- template: /eng/pipelines/common/templates/single-stage-pipeline-with-resources.yml
+ template: /eng/pipelines/common/templates/pipeline-with-resources.yml
parameters:
- jobs:
+ stages:
+ - stage: Build
+ jobs:
- #
- # Build CoreCLR checked and libraries Release
- #
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/common/build-coreclr-and-libraries-job.yml
- buildConfig: checked
- platformGroup: gcstress
- jobParameters:
- # libraries test build platforms
- testBuildPlatforms:
- - Linux_x64
- - windows_x64
+ #
+ # Build CoreCLR checked and libraries Release
+ #
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/common/build-coreclr-and-libraries-job.yml
+ buildConfig: checked
+ platformGroup: gcstress
+ jobParameters:
+ # libraries test build platforms
+ testBuildPlatforms:
+ - Linux_x64
+ - windows_x64
- #
- # Libraries Test Run using Release libraries, Checked CoreCLR, and stress modes
- #
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/libraries/run-test-job.yml
- buildConfig: Release
- platformGroup: gcstress
- helixQueueGroup: libraries
- helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
- jobParameters:
- # Default timeout is 150 minutes (2.5 hours), which is not enough for stress.
- timeoutInMinutes: 600
- testScope: innerloop
- liveRuntimeBuildConfig: checked
- dependsOnTestBuildConfiguration: Release
- dependsOnTestArchitecture: x64
- coreclrTestGroup: gcstress-extra
+ #
+ # Libraries Test Run using Release libraries, Checked CoreCLR, and stress modes
+ #
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/libraries/run-test-job.yml
+ buildConfig: Release
+ platformGroup: gcstress
+ helixQueueGroup: libraries
+ helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
+ jobParameters:
+ # Default timeout is 150 minutes (2.5 hours), which is not enough for stress.
+ timeoutInMinutes: 600
+ testScope: innerloop
+ liveRuntimeBuildConfig: checked
+ dependsOnTestBuildConfiguration: Release
+ dependsOnTestArchitecture: x64
+ coreclrTestGroup: gcstress-extra
# always: true
extends:
- template: /eng/pipelines/common/templates/single-stage-pipeline-with-resources.yml
+ template: /eng/pipelines/common/templates/pipeline-with-resources.yml
parameters:
- jobs:
+ stages:
+ - stage: Build
+ jobs:
- #
- # Build CoreCLR checked and libraries Release
- #
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/common/build-coreclr-and-libraries-job.yml
- buildConfig: checked
- platformGroup: gcstress
- jobParameters:
- # libraries test build platforms
- testBuildPlatforms:
- - Linux_x64
- - windows_x64
+ #
+ # Build CoreCLR checked and libraries Release
+ #
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/common/build-coreclr-and-libraries-job.yml
+ buildConfig: checked
+ platformGroup: gcstress
+ jobParameters:
+ # libraries test build platforms
+ testBuildPlatforms:
+ - Linux_x64
+ - windows_x64
- #
- # Libraries Test Run using Release libraries, Checked CoreCLR, and stress modes
- #
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/libraries/run-test-job.yml
- buildConfig: Release
- platformGroup: gcstress
- helixQueueGroup: libraries
- helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
- jobParameters:
- # Default timeout is 150 minutes (2.5 hours), which is not enough for stress.
- timeoutInMinutes: 600
- testScope: innerloop
- liveRuntimeBuildConfig: checked
- dependsOnTestBuildConfiguration: Release
- dependsOnTestArchitecture: x64
- coreclrTestGroup: gcstress0x3-gcstress0xc
+ #
+ # Libraries Test Run using Release libraries, Checked CoreCLR, and stress modes
+ #
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/libraries/run-test-job.yml
+ buildConfig: Release
+ platformGroup: gcstress
+ helixQueueGroup: libraries
+ helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
+ jobParameters:
+ # Default timeout is 150 minutes (2.5 hours), which is not enough for stress.
+ timeoutInMinutes: 600
+ testScope: innerloop
+ liveRuntimeBuildConfig: checked
+ dependsOnTestBuildConfiguration: Release
+ dependsOnTestArchitecture: x64
+ coreclrTestGroup: gcstress0x3-gcstress0xc
always: true
extends:
- template: /eng/pipelines/common/templates/single-stage-pipeline-with-resources.yml
+ template: /eng/pipelines/common/templates/pipeline-with-resources.yml
parameters:
- jobs:
+ stages:
+ - stage: Build
+ jobs:
- #
- # Build CoreCLR checked and libraries Release
- #
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/common/build-coreclr-and-libraries-job.yml
- buildConfig: checked
- platforms:
- - Linux_x64
- - Linux_arm
- - Linux_arm64
- - windows_x86
- - windows_x64
- - windows_arm64
- jobParameters:
- # libraries test build platforms
- testBuildPlatforms:
+ #
+ # Build CoreCLR checked and libraries Release
+ #
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/common/build-coreclr-and-libraries-job.yml
+ buildConfig: checked
+ platforms:
- Linux_x64
+ - Linux_arm
+ - Linux_arm64
+ - windows_x86
- windows_x64
+ - windows_arm64
+ jobParameters:
+ # libraries test build platforms
+ testBuildPlatforms:
+ - Linux_x64
+ - windows_x64
- #
- # Libraries Test Run using Release libraries, Checked CoreCLR, and stress modes
- #
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/libraries/run-test-job.yml
- buildConfig: Release
- platforms:
- - Linux_arm
- - Linux_arm64
- - Linux_x64
- - windows_arm64
- - windows_x64
- - windows_x86
- helixQueueGroup: libraries
- helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
- jobParameters:
- # Default timeout is 150 minutes (2.5 hours), which is not enough for stress.
- timeoutInMinutes: 300
- testScope: innerloop
- liveRuntimeBuildConfig: checked
- dependsOnTestBuildConfiguration: Release
- dependsOnTestArchitecture: x64
- coreclrTestGroup: jitstress-random
+ #
+ # Libraries Test Run using Release libraries, Checked CoreCLR, and stress modes
+ #
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/libraries/run-test-job.yml
+ buildConfig: Release
+ platforms:
+ - Linux_arm
+ - Linux_arm64
+ - Linux_x64
+ - windows_arm64
+ - windows_x64
+ - windows_x86
+ helixQueueGroup: libraries
+ helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
+ jobParameters:
+ # Default timeout is 150 minutes (2.5 hours), which is not enough for stress.
+ timeoutInMinutes: 300
+ testScope: innerloop
+ liveRuntimeBuildConfig: checked
+ dependsOnTestBuildConfiguration: Release
+ dependsOnTestArchitecture: x64
+ coreclrTestGroup: jitstress-random
always: true
extends:
- template: /eng/pipelines/common/templates/single-stage-pipeline-with-resources.yml
+ template: /eng/pipelines/common/templates/pipeline-with-resources.yml
parameters:
- jobs:
+ stages:
+ - stage: Build
+ jobs:
- #
- # Build CoreCLR checked and libraries Release
- #
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/common/build-coreclr-and-libraries-job.yml
- buildConfig: checked
- platforms:
- - Linux_x64
- - Linux_arm
- - Linux_arm64
- - windows_x86
- - windows_x64
- - windows_arm64
- jobParameters:
- # libraries test build platforms
- testBuildPlatforms:
+ #
+ # Build CoreCLR checked and libraries Release
+ #
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/common/build-coreclr-and-libraries-job.yml
+ buildConfig: checked
+ platforms:
- Linux_x64
+ - Linux_arm
+ - Linux_arm64
+ - windows_x86
- windows_x64
+ - windows_arm64
+ jobParameters:
+ # libraries test build platforms
+ testBuildPlatforms:
+ - Linux_x64
+ - windows_x64
- #
- # Libraries Test Run using Release libraries, Checked CoreCLR, and stress modes
- #
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/libraries/run-test-job.yml
- buildConfig: Release
- platforms:
- - Linux_arm
- - Linux_arm64
- - Linux_x64
- - windows_arm64
- - windows_x64
- - windows_x86
- helixQueueGroup: libraries
- helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
- jobParameters:
- # Default timeout is 150 minutes (2.5 hours), which is not enough for stress.
- timeoutInMinutes: 300
- testScope: innerloop
- liveRuntimeBuildConfig: checked
- dependsOnTestBuildConfiguration: Release
- dependsOnTestArchitecture: x64
- coreclrTestGroup: jitstress
+ #
+ # Libraries Test Run using Release libraries, Checked CoreCLR, and stress modes
+ #
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/libraries/run-test-job.yml
+ buildConfig: Release
+ platforms:
+ - Linux_arm
+ - Linux_arm64
+ - Linux_x64
+ - windows_arm64
+ - windows_x64
+ - windows_x86
+ helixQueueGroup: libraries
+ helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
+ jobParameters:
+ # Default timeout is 150 minutes (2.5 hours), which is not enough for stress.
+ timeoutInMinutes: 300
+ testScope: innerloop
+ liveRuntimeBuildConfig: checked
+ dependsOnTestBuildConfiguration: Release
+ dependsOnTestArchitecture: x64
+ coreclrTestGroup: jitstress
always: true
extends:
- template: /eng/pipelines/common/templates/single-stage-pipeline-with-resources.yml
+ template: /eng/pipelines/common/templates/pipeline-with-resources.yml
parameters:
- jobs:
+ stages:
+ - stage: Build
+ jobs:
- #
- # Build CoreCLR checked and libraries Release
- #
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/common/build-coreclr-and-libraries-job.yml
- buildConfig: checked
- platforms:
- - Linux_x64
- - Linux_arm
- - Linux_arm64
- - windows_x86
- - windows_x64
- - windows_arm64
- jobParameters:
- # libraries test build platforms
- testBuildPlatforms:
+ #
+ # Build CoreCLR checked and libraries Release
+ #
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/common/build-coreclr-and-libraries-job.yml
+ buildConfig: checked
+ platforms:
- Linux_x64
+ - Linux_arm
+ - Linux_arm64
+ - windows_x86
- windows_x64
+ - windows_arm64
+ jobParameters:
+ # libraries test build platforms
+ testBuildPlatforms:
+ - Linux_x64
+ - windows_x64
- #
- # Libraries Test Run using Release libraries, Checked CoreCLR, and stress modes
- #
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/libraries/run-test-job.yml
- buildConfig: Release
- platforms:
- - Linux_arm
- - Linux_arm64
- - Linux_x64
- - windows_arm64
- - windows_x64
- - windows_x86
- helixQueueGroup: libraries
- helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
- jobParameters:
- # Default timeout is 150 minutes (2.5 hours), which is not enough for stress.
- timeoutInMinutes: 300
- testScope: innerloop
- liveRuntimeBuildConfig: checked
- dependsOnTestBuildConfiguration: Release
- dependsOnTestArchitecture: x64
- coreclrTestGroup: jitstress2-jitstressregs
+ #
+ # Libraries Test Run using Release libraries, Checked CoreCLR, and stress modes
+ #
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/libraries/run-test-job.yml
+ buildConfig: Release
+ platforms:
+ - Linux_arm
+ - Linux_arm64
+ - Linux_x64
+ - windows_arm64
+ - windows_x64
+ - windows_x86
+ helixQueueGroup: libraries
+ helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
+ jobParameters:
+ # Default timeout is 150 minutes (2.5 hours), which is not enough for stress.
+ timeoutInMinutes: 300
+ testScope: innerloop
+ liveRuntimeBuildConfig: checked
+ dependsOnTestBuildConfiguration: Release
+ dependsOnTestArchitecture: x64
+ coreclrTestGroup: jitstress2-jitstressregs
always: true
extends:
- template: /eng/pipelines/common/templates/single-stage-pipeline-with-resources.yml
+ template: /eng/pipelines/common/templates/pipeline-with-resources.yml
parameters:
- jobs:
+ stages:
+ - stage: Build
+ jobs:
- #
- # Build CoreCLR checked and libraries Release
- #
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/common/build-coreclr-and-libraries-job.yml
- buildConfig: checked
- platforms:
- - Linux_x64
- - Linux_arm
- - Linux_arm64
- - windows_x86
- - windows_x64
- - windows_arm64
- jobParameters:
- # libraries test build platforms
- testBuildPlatforms:
+ #
+ # Build CoreCLR checked and libraries Release
+ #
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/common/build-coreclr-and-libraries-job.yml
+ buildConfig: checked
+ platforms:
- Linux_x64
+ - Linux_arm
+ - Linux_arm64
+ - windows_x86
- windows_x64
+ - windows_arm64
+ jobParameters:
+ # libraries test build platforms
+ testBuildPlatforms:
+ - Linux_x64
+ - windows_x64
- #
- # Libraries Test Run using Release libraries, Checked CoreCLR, and stress modes
- #
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/libraries/run-test-job.yml
- buildConfig: Release
- platforms:
- - Linux_arm
- - Linux_arm64
- - Linux_x64
- - windows_arm64
- - windows_x64
- - windows_x86
- helixQueueGroup: libraries
- helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
- jobParameters:
- # Default timeout is 150 minutes (2.5 hours), which is not enough for stress.
- timeoutInMinutes: 300
- testScope: innerloop
- liveRuntimeBuildConfig: checked
- dependsOnTestBuildConfiguration: Release
- dependsOnTestArchitecture: x64
- coreclrTestGroup: jitstressregs
+ #
+ # Libraries Test Run using Release libraries, Checked CoreCLR, and stress modes
+ #
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/libraries/run-test-job.yml
+ buildConfig: Release
+ platforms:
+ - Linux_arm
+ - Linux_arm64
+ - Linux_x64
+ - windows_arm64
+ - windows_x64
+ - windows_x86
+ helixQueueGroup: libraries
+ helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
+ jobParameters:
+ # Default timeout is 150 minutes (2.5 hours), which is not enough for stress.
+ timeoutInMinutes: 300
+ testScope: innerloop
+ liveRuntimeBuildConfig: checked
+ dependsOnTestBuildConfiguration: Release
+ dependsOnTestArchitecture: x64
+ coreclrTestGroup: jitstressregs
always: true
extends:
- template: /eng/pipelines/common/templates/single-stage-pipeline-with-resources.yml
+ template: /eng/pipelines/common/templates/pipeline-with-resources.yml
parameters:
- jobs:
+ stages:
+ - stage: Build
+ jobs:
- #
- # Build CoreCLR checked and libraries Release
- #
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/common/build-coreclr-and-libraries-job.yml
- buildConfig: checked
- platforms:
- - Linux_x64
- - Linux_arm
- - Linux_arm64
- - windows_x86
- - windows_x64
- - windows_arm64
- jobParameters:
- # libraries test build platforms
- testBuildPlatforms:
+ #
+ # Build CoreCLR checked and libraries Release
+ #
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/common/build-coreclr-and-libraries-job.yml
+ buildConfig: checked
+ platforms:
- Linux_x64
+ - Linux_arm
+ - Linux_arm64
+ - windows_x86
- windows_x64
+ - windows_arm64
+ jobParameters:
+ # libraries test build platforms
+ testBuildPlatforms:
+ - Linux_x64
+ - windows_x64
- #
- # Libraries Test Run using Release libraries, Checked CoreCLR, and stress modes
- #
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/libraries/run-test-job.yml
- buildConfig: Release
- platforms:
- - Linux_arm
- - Linux_arm64
- - Linux_x64
- - windows_arm64
- - windows_x64
- - windows_x86
- helixQueueGroup: libraries
- helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
- jobParameters:
- timeoutInMinutes: 600
- testScope: innerloop
- liveRuntimeBuildConfig: checked
- dependsOnTestBuildConfiguration: Release
- dependsOnTestArchitecture: x64
- coreclrTestGroup: pgo
+ #
+ # Libraries Test Run using Release libraries, Checked CoreCLR, and stress modes
+ #
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/libraries/run-test-job.yml
+ buildConfig: Release
+ platforms:
+ - Linux_arm
+ - Linux_arm64
+ - Linux_x64
+ - windows_arm64
+ - windows_x64
+ - windows_x86
+ helixQueueGroup: libraries
+ helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
+ jobParameters:
+ timeoutInMinutes: 600
+ testScope: innerloop
+ liveRuntimeBuildConfig: checked
+ dependsOnTestBuildConfiguration: Release
+ dependsOnTestArchitecture: x64
+ coreclrTestGroup: pgo
#always: true
extends:
- template: /eng/pipelines/common/templates/single-stage-pipeline-with-resources.yml
+ template: /eng/pipelines/common/templates/pipeline-with-resources.yml
parameters:
- jobs:
+ stages:
+ - stage: Build
+ jobs:
- - template: /eng/pipelines/coreclr/perf-wasm-jobs.yml
- parameters:
- collectHelixLogsScript: ${{ variables._wasmCollectHelixLogsScript }}
- ${{ and(ne(variables['System.TeamProject'], 'public'), in(variables['Build.Reason'], 'Schedule')) }}:
- runProfile: 'non-v8'
- ${{ if and(ne(variables['System.TeamProject'], 'public'), notin(variables['Build.Reason'], 'Schedule')) }}:
- runProfile: 'v8'
+ - template: /eng/pipelines/coreclr/perf-wasm-jobs.yml
+ parameters:
+ collectHelixLogsScript: ${{ variables._wasmCollectHelixLogsScript }}
+ ${{ and(ne(variables['System.TeamProject'], 'public'), in(variables['Build.Reason'], 'Schedule')) }}:
+ runProfile: 'non-v8'
+ ${{ if and(ne(variables['System.TeamProject'], 'public'), notin(variables['Build.Reason'], 'Schedule')) }}:
+ runProfile: 'v8'
- - template: /eng/pipelines/coreclr/perf-non-wasm-jobs.yml
+ - template: /eng/pipelines/coreclr/perf-non-wasm-jobs.yml
always: true
extends:
- template: /eng/pipelines/common/templates/single-stage-pipeline-with-resources.yml
+ template: /eng/pipelines/common/templates/pipeline-with-resources.yml
parameters:
- jobs:
-
- - ${{ if and(ne(variables['System.TeamProject'], 'public'), in(variables['Build.Reason'], 'Schedule')) }}:
-
- # build mono
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/mono/templates/build-job.yml
- runtimeFlavor: mono
- buildConfig: release
- platforms:
- - Linux_arm64
-
- # build coreclr and libraries
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/common/build-coreclr-and-libraries-job.yml
- buildConfig: release
- platforms:
- - Linux_arm64
- jobParameters:
- testGroup: perf
-
- # run arm64 interpreter jobs for mono
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/coreclr/templates/perf-job.yml
- buildConfig: release
- runtimeFlavor: mono
- platforms:
- - Linux_arm64
- jobParameters:
- testGroup: perf
- liveLibrariesBuildConfig: Release
- runtimeType: mono
- codeGenType: 'Interpreter'
- projectFile: microbenchmarks.proj
- runKind: micro_mono
- runJobTemplate: /eng/pipelines/coreclr/templates/run-performance-job.yml
- logicalmachine: 'perfampere'
- timeoutInMinutes: 720
-
- # build mono on wasm
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/common/global-build-job.yml
- buildConfig: release
- runtimeFlavor: mono
- platforms:
- - Browser_wasm
- jobParameters:
- buildArgs: -s mono+libs+host+packs -c $(_BuildConfig)
- nameSuffix: wasm
- isOfficialBuild: false
- extraStepsTemplate: /eng/pipelines/common/upload-artifact-step.yml
- extraStepsParameters:
- rootFolder: '$(Build.SourcesDirectory)/artifacts/'
- includeRootFolder: true
- displayName: Browser Wasm Artifacts
- artifactName: BrowserWasm
- archiveType: zip
- archiveExtension: .zip
-
- - ${{ if and(ne(variables['System.TeamProject'], 'public'), notin(variables['Build.Reason'], 'Schedule')) }}:
-
- # build coreclr and libraries
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/common/build-coreclr-and-libraries-job.yml
- buildConfig: release
- platforms:
- - Linux_arm64
- - windows_arm64
- jobParameters:
- testGroup: perf
-
- # build mono on wasm
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/common/global-build-job.yml
- buildConfig: release
- runtimeFlavor: mono
- platforms:
- - Browser_wasm
- jobParameters:
- buildArgs: -s mono+libs+host+packs -c $(_BuildConfig)
- nameSuffix: wasm
- isOfficialBuild: false
- extraStepsTemplate: /eng/pipelines/common/upload-artifact-step.yml
- extraStepsParameters:
- rootFolder: '$(Build.SourcesDirectory)/artifacts/'
- includeRootFolder: true
- displayName: Browser Wasm Artifacts
- artifactName: BrowserWasm
- archiveType: zip
- archiveExtension: .zip
-
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/common/global-build-job.yml
- buildConfig: release
- runtimeFlavor: mono
- runtimeVariant: 'llvmaot'
- platforms:
- - Linux_arm64
- jobParameters:
- buildArgs: -s mono+libs+host+packs -c $(_BuildConfig) /p:MonoEnableLLVM=true /p:MonoBundleLLVMOptimizer=true
- nameSuffix: AOT
- isOfficialBuild: false
- extraStepsTemplate: /eng/pipelines/common/upload-artifact-step.yml
- extraStepsParameters:
- rootFolder: '$(Build.SourcesDirectory)/artifacts/'
- includeRootFolder: true
- displayName: AOT Mono Artifacts
- artifactName: LinuxMonoAOTarm64
- archiveExtension: '.tar.gz'
- archiveType: tar
- tarCompression: gz
-
- # run mono aot microbenchmarks perf job
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/coreclr/templates/perf-job.yml # NOTE: should we move this file out of coreclr tempelates because it contains mono jobs?
- buildConfig: release
- runtimeFlavor: aot
- platforms:
- - Linux_arm64
- jobParameters:
- testGroup: perf
- liveLibrariesBuildConfig: Release
- runtimeType: mono
- codeGenType: 'AOT'
- projectFile: microbenchmarks.proj
- runKind: micro_mono
- runJobTemplate: /eng/pipelines/coreclr/templates/run-performance-job.yml
- logicalmachine: 'perfampere'
- timeoutInMinutes: 500
-
- # run coreclr Linux arm64 ampere microbenchmarks perf job
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/coreclr/templates/perf-job.yml
- buildConfig: release
- runtimeFlavor: coreclr
- platforms:
- - Linux_arm64
- jobParameters:
- testGroup: perf
- liveLibrariesBuildConfig: Release
- projectFile: microbenchmarks.proj
- runKind: micro
- runJobTemplate: /eng/pipelines/coreclr/templates/run-performance-job.yml
- logicalmachine: 'perfampere'
- timeoutInMinutes: 500
-
- # run coreclr Windows arm64 microbenchmarks perf job
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/coreclr/templates/perf-job.yml
- buildConfig: release
- runtimeFlavor: coreclr
- platforms:
- - windows_arm64
- jobParameters:
- testGroup: perf
- liveLibrariesBuildConfig: Release
- projectFile: microbenchmarks.proj
- runKind: micro
- runJobTemplate: /eng/pipelines/coreclr/templates/run-performance-job.yml
- logicalmachine: 'perfsurf'
-
- # run coreclr Windows arm64 ampere microbenchmarks perf job
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/coreclr/templates/perf-job.yml
- buildConfig: release
- runtimeFlavor: coreclr
- platforms:
- - windows_arm64
- jobParameters:
- testGroup: perf
- liveLibrariesBuildConfig: Release
- projectFile: microbenchmarks.proj
- runKind: micro
- runJobTemplate: /eng/pipelines/coreclr/templates/run-performance-job.yml
- logicalmachine: 'perfampere'
-
- # Uncomment once we fix https://github.com/dotnet/performance/issues/1950
- # # run coreclr linux crossgen perf job
- # - template: /eng/pipelines/common/platform-matrix.yml
- # parameters:
- # jobTemplate: /eng/pipelines/coreclr/templates/perf-job.yml
- # buildConfig: release
- # runtimeFlavor: coreclr
- # platforms:
- # - Linux_arm64
- # jobParameters:
- # testGroup: perf
- # liveLibrariesBuildConfig: Release
- # projectFile: crossgen_perf.proj
- # runKind: crossgen_scenarios
- # runJobTemplate: /eng/pipelines/coreclr/templates/run-scenarios-job.yml
- # logicalmachine: 'perfa64'
-
- # # run coreclr windows crossgen perf job
- # - template: /eng/pipelines/common/platform-matrix.yml
- # parameters:
- # jobTemplate: /eng/pipelines/coreclr/templates/perf-job.yml
- # buildConfig: release
- # runtimeFlavor: coreclr
- # platforms:
- # - windows_arm64
- # jobParameters:
- # testGroup: perf
- # liveLibrariesBuildConfig: Release
- # projectFile: crossgen_perf.proj
- # runKind: crossgen_scenarios
- # runJobTemplate: /eng/pipelines/coreclr/templates/run-scenarios-job.yml
- # logicalmachine: 'perfsurf'
+ stages:
+ - stage: Build
+ jobs:
+
+ - ${{ if and(ne(variables['System.TeamProject'], 'public'), in(variables['Build.Reason'], 'Schedule')) }}:
+
+ # build mono
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/mono/templates/build-job.yml
+ runtimeFlavor: mono
+ buildConfig: release
+ platforms:
+ - Linux_arm64
+
+ # build coreclr and libraries
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/common/build-coreclr-and-libraries-job.yml
+ buildConfig: release
+ platforms:
+ - Linux_arm64
+ jobParameters:
+ testGroup: perf
+
+ # run arm64 interpreter jobs for mono
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/coreclr/templates/perf-job.yml
+ buildConfig: release
+ runtimeFlavor: mono
+ platforms:
+ - Linux_arm64
+ jobParameters:
+ testGroup: perf
+ liveLibrariesBuildConfig: Release
+ runtimeType: mono
+ codeGenType: 'Interpreter'
+ projectFile: microbenchmarks.proj
+ runKind: micro_mono
+ runJobTemplate: /eng/pipelines/coreclr/templates/run-performance-job.yml
+ logicalmachine: 'perfampere'
+ timeoutInMinutes: 720
+
+ # build mono on wasm
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/common/global-build-job.yml
+ buildConfig: release
+ runtimeFlavor: mono
+ platforms:
+ - Browser_wasm
+ jobParameters:
+ buildArgs: -s mono+libs+host+packs -c $(_BuildConfig)
+ nameSuffix: wasm
+ isOfficialBuild: false
+ extraStepsTemplate: /eng/pipelines/common/upload-artifact-step.yml
+ extraStepsParameters:
+ rootFolder: '$(Build.SourcesDirectory)/artifacts/'
+ includeRootFolder: true
+ displayName: Browser Wasm Artifacts
+ artifactName: BrowserWasm
+ archiveType: zip
+ archiveExtension: .zip
+
+ - ${{ if and(ne(variables['System.TeamProject'], 'public'), notin(variables['Build.Reason'], 'Schedule')) }}:
+
+ # build coreclr and libraries
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/common/build-coreclr-and-libraries-job.yml
+ buildConfig: release
+ platforms:
+ - Linux_arm64
+ - windows_arm64
+ jobParameters:
+ testGroup: perf
+
+ # build mono on wasm
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/common/global-build-job.yml
+ buildConfig: release
+ runtimeFlavor: mono
+ platforms:
+ - Browser_wasm
+ jobParameters:
+ buildArgs: -s mono+libs+host+packs -c $(_BuildConfig)
+ nameSuffix: wasm
+ isOfficialBuild: false
+ extraStepsTemplate: /eng/pipelines/common/upload-artifact-step.yml
+ extraStepsParameters:
+ rootFolder: '$(Build.SourcesDirectory)/artifacts/'
+ includeRootFolder: true
+ displayName: Browser Wasm Artifacts
+ artifactName: BrowserWasm
+ archiveType: zip
+ archiveExtension: .zip
+
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/common/global-build-job.yml
+ buildConfig: release
+ runtimeFlavor: mono
+ runtimeVariant: 'llvmaot'
+ platforms:
+ - Linux_arm64
+ jobParameters:
+ buildArgs: -s mono+libs+host+packs -c $(_BuildConfig) /p:MonoEnableLLVM=true /p:MonoBundleLLVMOptimizer=true
+ nameSuffix: AOT
+ isOfficialBuild: false
+ extraStepsTemplate: /eng/pipelines/common/upload-artifact-step.yml
+ extraStepsParameters:
+ rootFolder: '$(Build.SourcesDirectory)/artifacts/'
+ includeRootFolder: true
+ displayName: AOT Mono Artifacts
+ artifactName: LinuxMonoAOTarm64
+ archiveExtension: '.tar.gz'
+ archiveType: tar
+ tarCompression: gz
+
+ # run mono aot microbenchmarks perf job
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/coreclr/templates/perf-job.yml # NOTE: should we move this file out of coreclr tempelates because it contains mono jobs?
+ buildConfig: release
+ runtimeFlavor: aot
+ platforms:
+ - Linux_arm64
+ jobParameters:
+ testGroup: perf
+ liveLibrariesBuildConfig: Release
+ runtimeType: mono
+ codeGenType: 'AOT'
+ projectFile: microbenchmarks.proj
+ runKind: micro_mono
+ runJobTemplate: /eng/pipelines/coreclr/templates/run-performance-job.yml
+ logicalmachine: 'perfampere'
+ timeoutInMinutes: 500
+
+ # run coreclr Linux arm64 ampere microbenchmarks perf job
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/coreclr/templates/perf-job.yml
+ buildConfig: release
+ runtimeFlavor: coreclr
+ platforms:
+ - Linux_arm64
+ jobParameters:
+ testGroup: perf
+ liveLibrariesBuildConfig: Release
+ projectFile: microbenchmarks.proj
+ runKind: micro
+ runJobTemplate: /eng/pipelines/coreclr/templates/run-performance-job.yml
+ logicalmachine: 'perfampere'
+ timeoutInMinutes: 500
+
+ # run coreclr Windows arm64 microbenchmarks perf job
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/coreclr/templates/perf-job.yml
+ buildConfig: release
+ runtimeFlavor: coreclr
+ platforms:
+ - windows_arm64
+ jobParameters:
+ testGroup: perf
+ liveLibrariesBuildConfig: Release
+ projectFile: microbenchmarks.proj
+ runKind: micro
+ runJobTemplate: /eng/pipelines/coreclr/templates/run-performance-job.yml
+ logicalmachine: 'perfsurf'
+
+ # run coreclr Windows arm64 ampere microbenchmarks perf job
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/coreclr/templates/perf-job.yml
+ buildConfig: release
+ runtimeFlavor: coreclr
+ platforms:
+ - windows_arm64
+ jobParameters:
+ testGroup: perf
+ liveLibrariesBuildConfig: Release
+ projectFile: microbenchmarks.proj
+ runKind: micro
+ runJobTemplate: /eng/pipelines/coreclr/templates/run-performance-job.yml
+ logicalmachine: 'perfampere'
+
+ # Uncomment once we fix https://github.com/dotnet/performance/issues/1950
+ # # run coreclr linux crossgen perf job
+ # - template: /eng/pipelines/common/platform-matrix.yml
+ # parameters:
+ # jobTemplate: /eng/pipelines/coreclr/templates/perf-job.yml
+ # buildConfig: release
+ # runtimeFlavor: coreclr
+ # platforms:
+ # - Linux_arm64
+ # jobParameters:
+ # testGroup: perf
+ # liveLibrariesBuildConfig: Release
+ # projectFile: crossgen_perf.proj
+ # runKind: crossgen_scenarios
+ # runJobTemplate: /eng/pipelines/coreclr/templates/run-scenarios-job.yml
+ # logicalmachine: 'perfa64'
+
+ # # run coreclr windows crossgen perf job
+ # - template: /eng/pipelines/common/platform-matrix.yml
+ # parameters:
+ # jobTemplate: /eng/pipelines/coreclr/templates/perf-job.yml
+ # buildConfig: release
+ # runtimeFlavor: coreclr
+ # platforms:
+ # - windows_arm64
+ # jobParameters:
+ # testGroup: perf
+ # liveLibrariesBuildConfig: Release
+ # projectFile: crossgen_perf.proj
+ # runKind: crossgen_scenarios
+ # runJobTemplate: /eng/pipelines/coreclr/templates/run-scenarios-job.yml
+ # logicalmachine: 'perfsurf'
always: true
extends:
- template: /eng/pipelines/common/templates/single-stage-pipeline-with-resources.yml
+ template: /eng/pipelines/common/templates/pipeline-with-resources.yml
parameters:
- jobs:
+ stages:
+ - stage: Build
+ jobs:
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/common/build-coreclr-and-libraries-job.yml
- buildConfig: checked
- platforms:
- - Linux_arm
- - Linux_arm64
- - Linux_x64
- - OSX_arm64
- - windows_arm
- - windows_arm64
- - windows_x64
- - windows_x86
- - CoreClrTestBuildHost # Either OSX_x64 or Linux_x64
- jobParameters:
- testGroup: pgo
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/common/build-coreclr-and-libraries-job.yml
+ buildConfig: checked
+ platforms:
+ - Linux_arm
+ - Linux_arm64
+ - Linux_x64
+ - OSX_arm64
+ - windows_arm
+ - windows_arm64
+ - windows_x64
+ - windows_x86
+ - CoreClrTestBuildHost # Either OSX_x64 or Linux_x64
+ jobParameters:
+ testGroup: pgo
- - 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: pgo
+ - 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: pgo
- - 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_arm
- - windows_arm64
- - windows_x64
- - windows_x86
- helixQueueGroup: ci
- helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
- jobParameters:
- testGroup: pgo
- liveLibrariesBuildConfig: Release
+ - 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_arm
+ - windows_arm64
+ - windows_x64
+ - windows_x86
+ helixQueueGroup: ci
+ helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
+ jobParameters:
+ testGroup: pgo
+ liveLibrariesBuildConfig: Release
always: true
extends:
- template: /eng/pipelines/common/templates/single-stage-pipeline-with-resources.yml
+ template: /eng/pipelines/common/templates/pipeline-with-resources.yml
parameters:
- jobs:
+ stages:
+ - stage: Build
+ jobs:
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/common/build-coreclr-and-libraries-job.yml
- buildConfig: checked
- platforms:
- - Linux_arm
- - Linux_arm64
- - Linux_x64
- - OSX_arm64
- - windows_arm
- - windows_arm64
- - windows_x64
- - windows_x86
- - CoreClrTestBuildHost # Either OSX_x64 or Linux_x64
- jobParameters:
- testGroup: pgostress
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/common/build-coreclr-and-libraries-job.yml
+ buildConfig: checked
+ platforms:
+ - Linux_arm
+ - Linux_arm64
+ - Linux_x64
+ - OSX_arm64
+ - windows_arm
+ - windows_arm64
+ - windows_x64
+ - windows_x86
+ - CoreClrTestBuildHost # Either OSX_x64 or Linux_x64
+ jobParameters:
+ testGroup: pgostress
- - 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: pgostress
+ - 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: pgostress
- - 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_arm
- - windows_arm64
- - windows_x64
- - windows_x86
- helixQueueGroup: ci
- helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
- jobParameters:
- testGroup: pgostress
- liveLibrariesBuildConfig: Release
+ - 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_arm
+ - windows_arm64
+ - windows_x64
+ - windows_x86
+ helixQueueGroup: ci
+ helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
+ jobParameters:
+ testGroup: pgostress
+ liveLibrariesBuildConfig: Release
always: true
extends:
- template: /eng/pipelines/common/templates/single-stage-pipeline-with-resources.yml
+ template: /eng/pipelines/common/templates/pipeline-with-resources.yml
parameters:
- jobs:
+ stages:
+ - stage: Build
+ jobs:
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/common/build-coreclr-and-libraries-job.yml
- buildConfig: checked
- platformGroup: gcstress
- platforms:
- # It is too early to include OSX_arm64 in platform group gcstress
- # Adding it here will enable it also
- - OSX_arm64
- - CoreClrTestBuildHost # Either OSX_x64 or Linux_x64
- jobParameters:
- testGroup: r2r-extra
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/common/build-coreclr-and-libraries-job.yml
+ buildConfig: checked
+ platformGroup: gcstress
+ platforms:
+ # It is too early to include OSX_arm64 in platform group gcstress
+ # Adding it here will enable it also
+ - OSX_arm64
+ - CoreClrTestBuildHost # Either OSX_x64 or Linux_x64
+ jobParameters:
+ testGroup: r2r-extra
- - 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: r2r-extra
+ - 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: r2r-extra
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/common/templates/runtimes/run-test-job.yml
- buildConfig: checked
- platformGroup: gcstress # r2r-extra testGroup runs gcstress0xf scenario
- platforms:
- # It is too early to include OSX_arm64 in platform group gcstress
- # Adding it here will enable it also
- - OSX_arm64
- helixQueueGroup: ci
- helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
- jobParameters:
- testGroup: r2r-extra
- readyToRun: true
- displayNameArgs: R2R
- liveLibrariesBuildConfig: Release
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/common/templates/runtimes/run-test-job.yml
+ buildConfig: checked
+ platformGroup: gcstress # r2r-extra testGroup runs gcstress0xf scenario
+ platforms:
+ # It is too early to include OSX_arm64 in platform group gcstress
+ # Adding it here will enable it also
+ - OSX_arm64
+ helixQueueGroup: ci
+ helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
+ jobParameters:
+ testGroup: r2r-extra
+ readyToRun: true
+ displayNameArgs: R2R
+ liveLibrariesBuildConfig: Release
always: true
extends:
- template: /eng/pipelines/common/templates/single-stage-pipeline-with-resources.yml
+ template: /eng/pipelines/common/templates/pipeline-with-resources.yml
parameters:
- jobs:
+ stages:
+ - stage: Build
+ jobs:
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/common/build-coreclr-and-libraries-job.yml
- buildConfig: checked
- platforms:
- - Linux_arm
- - Linux_arm64
- - Linux_x64
- - OSX_arm64
- - windows_arm
- - windows_arm64
- - windows_x64
- - windows_x86
- - CoreClrTestBuildHost # Either OSX_x64 or Linux_x64
- jobParameters:
- testGroup: outerloop
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/common/build-coreclr-and-libraries-job.yml
+ buildConfig: checked
+ platforms:
+ - Linux_arm
+ - Linux_arm64
+ - Linux_x64
+ - OSX_arm64
+ - windows_arm
+ - windows_arm64
+ - windows_x64
+ - windows_x86
+ - CoreClrTestBuildHost # Either OSX_x64 or Linux_x64
+ jobParameters:
+ 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/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_arm
- - 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
+ - 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_arm
+ - 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
always: true
extends:
- template: /eng/pipelines/common/templates/single-stage-pipeline-with-resources.yml
+ template: /eng/pipelines/common/templates/pipeline-with-resources.yml
parameters:
- jobs:
+ stages:
+ - stage: Build
+ jobs:
- #
- # Release CoreCLR and Library builds
- #
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/common/build-coreclr-and-libraries-job.yml
- buildConfig: release
- platformGroup: all
- platforms:
- # It is too early to include OSX_arm64 in platform group all
- # Adding it here will enable it also
- - OSX_arm64
- jobParameters:
- isOfficialBuild: false
+ #
+ # Release CoreCLR and Library builds
+ #
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/common/build-coreclr-and-libraries-job.yml
+ buildConfig: release
+ platformGroup: all
+ platforms:
+ # It is too early to include OSX_arm64 in platform group all
+ # Adding it here will enable it also
+ - OSX_arm64
+ jobParameters:
+ isOfficialBuild: false
- #
- # Release test builds
- #
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/common/templates/runtimes/build-test-job.yml
- buildConfig: release
- platforms:
- - CoreClrTestBuildHost # Either OSX_x64 or Linux_x64
- jobParameters:
- testGroup: outerloop
+ #
+ # Release test builds
+ #
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/common/templates/runtimes/build-test-job.yml
+ buildConfig: release
+ platforms:
+ - CoreClrTestBuildHost # Either OSX_x64 or Linux_x64
+ jobParameters:
+ testGroup: outerloop
- #
- # Release test runs
- #
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/common/templates/runtimes/run-test-job.yml
- buildConfig: release
- platformGroup: all
- platforms:
- # It is too early to include OSX_arm64 in platform group all
- # Adding it here will enable it also
- - OSX_arm64
- helixQueueGroup: ci
- helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
- jobParameters:
- testGroup: outerloop
- liveLibrariesBuildConfig: Release
+ #
+ # Release test runs
+ #
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/common/templates/runtimes/run-test-job.yml
+ buildConfig: release
+ platformGroup: all
+ platforms:
+ # It is too early to include OSX_arm64 in platform group all
+ # Adding it here will enable it also
+ - OSX_arm64
+ helixQueueGroup: ci
+ helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
+ jobParameters:
+ testGroup: outerloop
+ liveLibrariesBuildConfig: Release
- #
- # Release R2R test runs
- #
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/common/templates/runtimes/run-test-job.yml
- buildConfig: release
- platformGroup: all
- helixQueueGroup: ci
- helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
- jobParameters:
- testGroup: outerloop
- liveLibrariesBuildConfig: Release
- readyToRun: true
- displayNameArgs: R2R
+ #
+ # Release R2R test runs
+ #
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/common/templates/runtimes/run-test-job.yml
+ buildConfig: release
+ platformGroup: all
+ helixQueueGroup: ci
+ helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
+ jobParameters:
+ testGroup: outerloop
+ liveLibrariesBuildConfig: Release
+ readyToRun: true
+ displayNameArgs: R2R
always: true
extends:
- template: /eng/pipelines/common/templates/single-stage-pipeline-with-resources.yml
+ template: /eng/pipelines/common/templates/pipeline-with-resources.yml
parameters:
- jobs:
+ stages:
+ - stage: Build
+ jobs:
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/common/build-coreclr-and-libraries-job.yml
- buildConfig: checked
- platforms:
- - Linux_x64
- - windows_x64
- - windows_x86
- - CoreClrTestBuildHost # Either OSX_x64 or Linux_x64
- jobParameters:
- testGroup: outerloop
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/common/build-coreclr-and-libraries-job.yml
+ buildConfig: checked
+ platforms:
+ - Linux_x64
+ - windows_x64
+ - windows_x86
+ - CoreClrTestBuildHost # Either OSX_x64 or Linux_x64
+ jobParameters:
+ 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/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_x64
- - windows_x64
- - windows_x86
- helixQueueGroup: ci
- helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
- jobParameters:
- testGroup: outerloop
- runInUnloadableContext: true
- displayNameArgs: RunInContext
- liveLibrariesBuildConfig: Release
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/common/templates/runtimes/run-test-job.yml
+ buildConfig: checked
+ platforms:
+ - Linux_x64
+ - windows_x64
+ - windows_x86
+ helixQueueGroup: ci
+ helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
+ jobParameters:
+ testGroup: outerloop
+ runInUnloadableContext: true
+ displayNameArgs: RunInContext
+ liveLibrariesBuildConfig: Release
always: true
extends:
- template: /eng/pipelines/common/templates/single-stage-pipeline-with-resources.yml
+ template: /eng/pipelines/common/templates/pipeline-with-resources.yml
parameters:
- jobs:
+ stages:
+ - stage: Build
+ jobs:
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/coreclr/templates/build-jit-job.yml
- buildConfig: checked
- platforms:
- - windows_x64
- - windows_x86
- jobParameters:
- uploadAs: 'pipelineArtifacts'
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/coreclr/templates/build-jit-job.yml
+ buildConfig: checked
+ platforms:
+ - windows_x64
+ - windows_x86
+ jobParameters:
+ uploadAs: 'pipelineArtifacts'
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/coreclr/templates/build-jit-job.yml
- buildConfig: release
- platforms:
- - windows_x64
- - windows_x86
- jobParameters:
- uploadAs: 'pipelineArtifacts'
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/coreclr/templates/build-jit-job.yml
+ buildConfig: release
+ platforms:
+ - windows_x64
+ - windows_x86
+ jobParameters:
+ uploadAs: 'pipelineArtifacts'
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/coreclr/templates/superpmi-asmdiffs-checked-release-job.yml
- buildConfig: checked
- platforms:
- - windows_x64
- - windows_x86
- helixQueueGroup: ci
- helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/coreclr/templates/superpmi-asmdiffs-checked-release-job.yml
+ buildConfig: checked
+ platforms:
+ - windows_x64
+ - windows_x86
+ helixQueueGroup: ci
+ helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
always: true
extends:
- template: /eng/pipelines/common/templates/single-stage-pipeline-with-resources.yml
+ template: /eng/pipelines/common/templates/pipeline-with-resources.yml
parameters:
- jobs:
+ stages:
+ - stage: Build
+ jobs:
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/common/build-coreclr-and-libraries-job.yml
- buildConfig: checked
- platforms:
- - OSX_arm64
- - Linux_arm
- - Linux_arm64
- - Linux_x64
- - windows_x64
- - windows_x86
- - windows_arm64
- - CoreClrTestBuildHost # Either OSX_x64 or Linux_x64
- jobParameters:
- testGroup: outerloop
- # libraries test build platforms
- testBuildPlatforms:
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/common/build-coreclr-and-libraries-job.yml
+ buildConfig: checked
+ platforms:
+ - OSX_arm64
+ - Linux_arm
+ - Linux_arm64
- Linux_x64
- windows_x64
+ - windows_x86
+ - windows_arm64
+ - CoreClrTestBuildHost # Either OSX_x64 or Linux_x64
+ jobParameters:
+ testGroup: outerloop
+ # libraries test build platforms
+ testBuildPlatforms:
+ - Linux_x64
+ - windows_x64
- # superpmi-collect-job that targets macOS/arm64 depends on coreclr binaries produced by the macOS/x64 job
- # We don't collect osx-x64 (it's essentially the same as linux-x64). If we did, we'd add OSX_x64 in the
- # build-coreclr-and-libraries-job.yml above, and remove this.
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/coreclr/templates/build-job.yml
- buildConfig: checked
- platforms:
- - OSX_x64
- jobParameters:
- testGroup: outerloop
+ # superpmi-collect-job that targets macOS/arm64 depends on coreclr binaries produced by the macOS/x64 job
+ # We don't collect osx-x64 (it's essentially the same as linux-x64). If we did, we'd add OSX_x64 in the
+ # build-coreclr-and-libraries-job.yml above, and remove this.
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/coreclr/templates/build-job.yml
+ buildConfig: checked
+ platforms:
+ - OSX_x64
+ jobParameters:
+ 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/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/coreclr/templates/superpmi-collect-job.yml
- buildConfig: checked
- platforms:
- - OSX_arm64
- - Linux_arm
- - Linux_arm64
- - Linux_x64
- - windows_x64
- - windows_x86
- - windows_arm64
- helixQueueGroup: ci
- helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
- jobParameters:
- testGroup: outerloop
- liveLibrariesBuildConfig: Release
- collectionType: pmi
- collectionName: libraries
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/coreclr/templates/superpmi-collect-job.yml
+ buildConfig: checked
+ platforms:
+ - OSX_arm64
+ - Linux_arm
+ - Linux_arm64
+ - Linux_x64
+ - windows_x64
+ - windows_x86
+ - windows_arm64
+ helixQueueGroup: ci
+ helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
+ jobParameters:
+ testGroup: outerloop
+ liveLibrariesBuildConfig: Release
+ collectionType: pmi
+ collectionName: libraries
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/coreclr/templates/superpmi-collect-job.yml
- buildConfig: checked
- platforms:
- - OSX_arm64
- - Linux_arm
- - Linux_arm64
- - Linux_x64
- - windows_x64
- - windows_x86
- - windows_arm64
- helixQueueGroup: ci
- helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
- jobParameters:
- testGroup: outerloop
- liveLibrariesBuildConfig: Release
- collectionType: pmi
- collectionName: libraries_tests
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/coreclr/templates/superpmi-collect-job.yml
+ buildConfig: checked
+ platforms:
+ - OSX_arm64
+ - Linux_arm
+ - Linux_arm64
+ - Linux_x64
+ - windows_x64
+ - windows_x86
+ - windows_arm64
+ helixQueueGroup: ci
+ helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
+ jobParameters:
+ testGroup: outerloop
+ liveLibrariesBuildConfig: Release
+ collectionType: pmi
+ collectionName: libraries_tests
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/coreclr/templates/superpmi-collect-job.yml
- buildConfig: checked
- platforms:
- - OSX_arm64
- - Linux_arm
- - Linux_arm64
- - Linux_x64
- - windows_x64
- - windows_x86
- - windows_arm64
- helixQueueGroup: ci
- helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
- jobParameters:
- testGroup: outerloop
- liveLibrariesBuildConfig: Release
- collectionType: crossgen2
- collectionName: libraries
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/coreclr/templates/superpmi-collect-job.yml
+ buildConfig: checked
+ platforms:
+ - OSX_arm64
+ - Linux_arm
+ - Linux_arm64
+ - Linux_x64
+ - windows_x64
+ - windows_x86
+ - windows_arm64
+ helixQueueGroup: ci
+ helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
+ jobParameters:
+ testGroup: outerloop
+ liveLibrariesBuildConfig: Release
+ collectionType: crossgen2
+ collectionName: libraries
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/coreclr/templates/superpmi-collect-job.yml
- buildConfig: checked
- platforms:
- - OSX_arm64
- - Linux_arm
- - Linux_arm64
- - Linux_x64
- - windows_x64
- - windows_x86
- - windows_arm64
- helixQueueGroup: ci
- helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
- jobParameters:
- testGroup: outerloop
- liveLibrariesBuildConfig: Release
- collectionType: run
- collectionName: benchmarks
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/coreclr/templates/superpmi-collect-job.yml
+ buildConfig: checked
+ platforms:
+ - OSX_arm64
+ - Linux_arm
+ - Linux_arm64
+ - Linux_x64
+ - windows_x64
+ - windows_x86
+ - windows_arm64
+ helixQueueGroup: ci
+ helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
+ jobParameters:
+ testGroup: outerloop
+ liveLibrariesBuildConfig: Release
+ collectionType: run
+ collectionName: benchmarks
- #
- # Collection of coreclr test run
- #
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/common/templates/runtimes/run-test-job.yml
- buildConfig: checked
- platforms:
- - OSX_arm64
- - Linux_arm
- - Linux_arm64
- - Linux_x64
- - windows_x64
- - windows_x86
- - windows_arm64
- helixQueueGroup: superpmi
- helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
- jobParameters:
- testGroup: outerloop
- liveLibrariesBuildConfig: Release
- SuperPmiCollect: true
+ #
+ # Collection of coreclr test run
+ #
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/common/templates/runtimes/run-test-job.yml
+ buildConfig: checked
+ platforms:
+ - OSX_arm64
+ - Linux_arm
+ - Linux_arm64
+ - Linux_x64
+ - windows_x64
+ - windows_x86
+ - windows_arm64
+ helixQueueGroup: superpmi
+ helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
+ jobParameters:
+ testGroup: outerloop
+ liveLibrariesBuildConfig: Release
+ SuperPmiCollect: true
- template: /eng/pipelines/common/variables.yml
extends:
- template: /eng/pipelines/common/templates/single-stage-pipeline-with-resources.yml
+ template: /eng/pipelines/common/templates/pipeline-with-resources.yml
parameters:
- jobs:
+ stages:
+ - stage: Build
+ jobs:
- # Don't run if the JIT-EE GUID has changed,
- # since there won't be any SuperPMI collections with the new GUID until the collection
- # pipeline completes after this PR is merged.
- - ${{ if eq(variables.dependOnEvaluatePaths, true) }}:
- - template: /eng/pipelines/common/evaluate-paths-job.yml
- parameters:
- paths:
- - subset: jiteeversionguid
- include:
- - src/coreclr/inc/jiteeversionguid.h
+ # Don't run if the JIT-EE GUID has changed,
+ # since there won't be any SuperPMI collections with the new GUID until the collection
+ # pipeline completes after this PR is merged.
+ - ${{ if eq(variables.dependOnEvaluatePaths, true) }}:
+ - template: /eng/pipelines/common/evaluate-paths-job.yml
+ parameters:
+ paths:
+ - subset: jiteeversionguid
+ include:
+ - src/coreclr/inc/jiteeversionguid.h
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/coreclr/templates/build-jit-job.yml
- buildConfig: checked
- platforms:
- - windows_x64
- - windows_x86
- jobParameters:
- uploadAs: 'pipelineArtifacts'
- condition: not(eq(dependencies.evaluate_paths.outputs['SetPathVars_jiteeversionguid.containsChange'], true))
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/coreclr/templates/build-jit-job.yml
+ buildConfig: checked
+ platforms:
+ - windows_x64
+ - windows_x86
+ jobParameters:
+ uploadAs: 'pipelineArtifacts'
+ condition: not(eq(dependencies.evaluate_paths.outputs['SetPathVars_jiteeversionguid.containsChange'], true))
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/coreclr/templates/build-jit-job.yml
- buildConfig: release
- platforms:
- - windows_x64
- - windows_x86
- jobParameters:
- uploadAs: 'pipelineArtifacts'
- condition: not(eq(dependencies.evaluate_paths.outputs['SetPathVars_jiteeversionguid.containsChange'], true))
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/coreclr/templates/build-jit-job.yml
+ buildConfig: release
+ platforms:
+ - windows_x64
+ - windows_x86
+ jobParameters:
+ uploadAs: 'pipelineArtifacts'
+ condition: not(eq(dependencies.evaluate_paths.outputs['SetPathVars_jiteeversionguid.containsChange'], true))
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/coreclr/templates/superpmi-diffs-job.yml
- buildConfig: checked
- platforms:
- - windows_x64
- - windows_x86
- helixQueueGroup: ci
- helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
- jobParameters:
- condition: not(eq(dependencies.evaluate_paths.outputs['SetPathVars_jiteeversionguid.containsChange'], true))
\ No newline at end of file
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/coreclr/templates/superpmi-diffs-job.yml
+ buildConfig: checked
+ platforms:
+ - windows_x64
+ - windows_x86
+ helixQueueGroup: ci
+ helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
+ jobParameters:
+ condition: not(eq(dependencies.evaluate_paths.outputs['SetPathVars_jiteeversionguid.containsChange'], true))
\ No newline at end of file
- template: /eng/pipelines/common/variables.yml
extends:
- template: /eng/pipelines/common/templates/single-stage-pipeline-with-resources.yml
+ template: /eng/pipelines/common/templates/pipeline-with-resources.yml
parameters:
- jobs:
+ stages:
+ - stage: Build
+ jobs:
- - ${{ if eq(variables.dependOnEvaluatePaths, true) }}:
- - template: /eng/pipelines/common/evaluate-paths-job.yml
- parameters:
- paths:
- - subset: jiteeversionguid
- include:
- - src/coreclr/inc/jiteeversionguid.h
+ - ${{ if eq(variables.dependOnEvaluatePaths, true) }}:
+ - template: /eng/pipelines/common/evaluate-paths-job.yml
+ parameters:
+ paths:
+ - subset: jiteeversionguid
+ include:
+ - src/coreclr/inc/jiteeversionguid.h
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/coreclr/templates/build-jit-job.yml
- buildConfig: checked
- platforms:
- - windows_x64
- - windows_x86
- jobParameters:
- uploadAs: 'pipelineArtifacts'
- condition: not(eq(dependencies.evaluate_paths.outputs['SetPathVars_jiteeversionguid.containsChange'], true))
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/coreclr/templates/build-jit-job.yml
+ buildConfig: checked
+ platforms:
+ - windows_x64
+ - windows_x86
+ jobParameters:
+ uploadAs: 'pipelineArtifacts'
+ condition: not(eq(dependencies.evaluate_paths.outputs['SetPathVars_jiteeversionguid.containsChange'], true))
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/coreclr/templates/superpmi-replay-job.yml
- buildConfig: checked
- platforms:
- - windows_x64
- - windows_x86
- helixQueueGroup: ci
- helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
- jobParameters:
- condition: not(eq(dependencies.evaluate_paths.outputs['SetPathVars_jiteeversionguid.containsChange'], true))
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/coreclr/templates/superpmi-replay-job.yml
+ buildConfig: checked
+ platforms:
+ - windows_x64
+ - windows_x86
+ helixQueueGroup: ci
+ helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
+ jobParameters:
+ condition: not(eq(dependencies.evaluate_paths.outputs['SetPathVars_jiteeversionguid.containsChange'], true))
always: true
extends:
- template: /eng/pipelines/common/templates/single-stage-pipeline-with-resources.yml
+ template: /eng/pipelines/common/templates/pipeline-with-resources.yml
parameters:
- jobs:
+ stages:
+ - stage: Build
+ jobs:
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/common/build-coreclr-and-libraries-job.yml
- buildConfig: checked
- platforms:
- - Linux_x64
- - windows_x64
- - windows_x86
- - CoreClrTestBuildHost # Either OSX_x64 or Linux_x64
- jobParameters:
- testGroup: outerloop
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/common/build-coreclr-and-libraries-job.yml
+ buildConfig: checked
+ platforms:
+ - Linux_x64
+ - windows_x64
+ - windows_x86
+ - CoreClrTestBuildHost # Either OSX_x64 or Linux_x64
+ jobParameters:
+ 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/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_x64
- - windows_x64
- - windows_x86
- helixQueueGroup: ci
- helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
- jobParameters:
- testGroup: outerloop
- tieringTest: true
- displayNameArgs: TieringTest
- liveLibrariesBuildConfig: Release
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/common/templates/runtimes/run-test-job.yml
+ buildConfig: checked
+ platforms:
+ - Linux_x64
+ - windows_x64
+ - windows_x86
+ helixQueueGroup: ci
+ helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
+ jobParameters:
+ testGroup: outerloop
+ tieringTest: true
+ displayNameArgs: TieringTest
+ liveLibrariesBuildConfig: Release
- template: /eng/pipelines/common/variables.yml
extends:
- template: /eng/pipelines/common/templates/single-stage-pipeline-with-resources.yml
+ template: /eng/pipelines/common/templates/pipeline-with-resources.yml
parameters:
- jobs:
+ stages:
+ - stage: Build
+ jobs:
- #
- # Evaluate paths
- #
- - ${{ if eq(variables.dependOnEvaluatePaths, true) }}:
- - template: /eng/pipelines/common/evaluate-default-paths.yml
+ #
+ # Evaluate paths
+ #
+ - ${{ if eq(variables.dependOnEvaluatePaths, true) }}:
+ - template: /eng/pipelines/common/evaluate-default-paths.yml
- #
- # Build with Release config and Debug runtimeConfiguration
- #
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/common/global-build-job.yml
- buildConfig: release
- platforms:
- - windows_x86
- - OSX_x64
- - OSX_arm64
- jobParameters:
- testGroup: innerloop
- nameSuffix: Runtime_Debug
- buildArgs: -c release -runtimeConfiguration debug
- timeoutInMinutes: 120
- condition:
- or(
- eq(dependencies.evaluate_paths.outputs['SetPathVars_coreclr.containsChange'], true),
- eq(dependencies.evaluate_paths.outputs['SetPathVars_non_mono_and_wasm.containsChange'], true),
- eq(variables['isRollingBuild'], true))
+ #
+ # Build with Release config and Debug runtimeConfiguration
+ #
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/common/global-build-job.yml
+ buildConfig: release
+ platforms:
+ - windows_x86
+ - OSX_x64
+ - OSX_arm64
+ jobParameters:
+ testGroup: innerloop
+ nameSuffix: Runtime_Debug
+ buildArgs: -c release -runtimeConfiguration debug
+ timeoutInMinutes: 120
+ condition:
+ or(
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_coreclr.containsChange'], true),
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_non_mono_and_wasm.containsChange'], true),
+ eq(variables['isRollingBuild'], true))
- #
- # Build with Release config and runtimeConfiguration with MSBuild generator
- #
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/common/global-build-job.yml
- buildConfig: release
- platforms:
- - windows_x86
- jobParameters:
- testGroup: innerloop
- nameSuffix: MSBuild_CMake
- buildArgs: -c Release -msbuild
- timeoutInMinutes: 120
- condition:
- or(
- eq(dependencies.evaluate_paths.outputs['SetPathVars_coreclr.containsChange'], true),
- eq(dependencies.evaluate_paths.outputs['SetPathVars_non_mono_and_wasm.containsChange'], true),
- eq(variables['isRollingBuild'], true))
+ #
+ # Build with Release config and runtimeConfiguration with MSBuild generator
+ #
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/common/global-build-job.yml
+ buildConfig: release
+ platforms:
+ - windows_x86
+ jobParameters:
+ testGroup: innerloop
+ nameSuffix: MSBuild_CMake
+ buildArgs: -c Release -msbuild
+ timeoutInMinutes: 120
+ condition:
+ or(
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_coreclr.containsChange'], true),
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_non_mono_and_wasm.containsChange'], true),
+ eq(variables['isRollingBuild'], true))
- #
- # Build with Debug config and Release runtimeConfiguration
- #
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/common/global-build-job.yml
- buildConfig: debug
- platforms:
- - Linux_x64
- jobParameters:
- testGroup: innerloop
- nameSuffix: Runtime_Release
- buildArgs: -c debug -runtimeConfiguration release
- timeoutInMinutes: 120
- condition:
- or(
- eq(dependencies.evaluate_paths.outputs['SetPathVars_coreclr.containsChange'], true),
- eq(dependencies.evaluate_paths.outputs['SetPathVars_non_mono_and_wasm.containsChange'], true),
- eq(variables['isRollingBuild'], true))
+ #
+ # Build with Debug config and Release runtimeConfiguration
+ #
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/common/global-build-job.yml
+ buildConfig: debug
+ platforms:
+ - Linux_x64
+ jobParameters:
+ testGroup: innerloop
+ nameSuffix: Runtime_Release
+ buildArgs: -c debug -runtimeConfiguration release
+ timeoutInMinutes: 120
+ condition:
+ or(
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_coreclr.containsChange'], true),
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_non_mono_and_wasm.containsChange'], true),
+ eq(variables['isRollingBuild'], true))
- #
- # Build with RuntimeFlavor only. This exercise code paths where only RuntimeFlavor is
- # specified. Catches cases where we depend on Configuration also being specified
- #
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/common/global-build-job.yml
- buildConfig: debug
- platforms:
- - Linux_x64
- jobParameters:
- testGroup: innerloop
- nameSuffix: RuntimeFlavor_Mono
- buildArgs: /p:RuntimeFlavor=Mono
- timeoutInMinutes: 120
- condition:
- or(
- eq(dependencies.evaluate_paths.outputs['SetPathVars_non_wasm.containsChange'], true),
- eq(variables['isRollingBuild'], true))
+ #
+ # Build with RuntimeFlavor only. This exercise code paths where only RuntimeFlavor is
+ # specified. Catches cases where we depend on Configuration also being specified
+ #
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/common/global-build-job.yml
+ buildConfig: debug
+ platforms:
+ - Linux_x64
+ jobParameters:
+ testGroup: innerloop
+ nameSuffix: RuntimeFlavor_Mono
+ buildArgs: /p:RuntimeFlavor=Mono
+ timeoutInMinutes: 120
+ condition:
+ or(
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_non_wasm.containsChange'], true),
+ eq(variables['isRollingBuild'], true))
- #
- # Build Mono + Libraries. This exercises the code path where we build libraries without
- # first building CoreCLR
- #
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/common/global-build-job.yml
- buildConfig: debug
- platforms:
- - windows_x64
- jobParameters:
- testGroup: innerloop
- nameSuffix: Mono_Libraries
- buildArgs: -subset mono+libs /p:RuntimeFlavor=Mono
- timeoutInMinutes: 120
- condition:
- or(
- eq(dependencies.evaluate_paths.outputs['SetPathVars_non_wasm.containsChange'], true),
- eq(variables['isRollingBuild'], true))
+ #
+ # Build Mono + Libraries. This exercises the code path where we build libraries without
+ # first building CoreCLR
+ #
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/common/global-build-job.yml
+ buildConfig: debug
+ platforms:
+ - windows_x64
+ jobParameters:
+ testGroup: innerloop
+ nameSuffix: Mono_Libraries
+ buildArgs: -subset mono+libs /p:RuntimeFlavor=Mono
+ timeoutInMinutes: 120
+ condition:
+ or(
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_non_wasm.containsChange'], true),
+ eq(variables['isRollingBuild'], true))
- #
- # Build Libraries AllConfigurations. This exercises the code path where we build libraries for all
- # configurations on a non Windows operating system.
- #
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/common/global-build-job.yml
- buildConfig: debug
- platforms:
- - Linux_x64
- jobParameters:
- nameSuffix: Libraries_AllConfigurations
- buildArgs: -subset libs -allconfigurations
- timeoutInMinutes: 120
- condition:
- or(
- eq(dependencies.evaluate_paths.outputs['SetPathVars_non_mono_and_wasm.containsChange'], true),
- eq(variables['isRollingBuild'], true))
+ #
+ # Build Libraries AllConfigurations. This exercises the code path where we build libraries for all
+ # configurations on a non Windows operating system.
+ #
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/common/global-build-job.yml
+ buildConfig: debug
+ platforms:
+ - Linux_x64
+ jobParameters:
+ nameSuffix: Libraries_AllConfigurations
+ buildArgs: -subset libs -allconfigurations
+ timeoutInMinutes: 120
+ condition:
+ or(
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_non_mono_and_wasm.containsChange'], true),
+ eq(variables['isRollingBuild'], true))
- #
- # SourceBuild Build
- #
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/common/global-build-job.yml
- buildConfig: Release
- platforms:
- - SourceBuild_Linux_x64
- jobParameters:
- nameSuffix: PortableSourceBuild
- extraStepsParameters:
- name: SourceBuildPackages
- timeoutInMinutes: 95
+ #
+ # SourceBuild Build
+ #
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/common/global-build-job.yml
+ buildConfig: Release
+ platforms:
+ - SourceBuild_Linux_x64
+ jobParameters:
+ nameSuffix: PortableSourceBuild
+ extraStepsParameters:
+ name: SourceBuildPackages
+ timeoutInMinutes: 95
value: /repo/src/libraries
extends:
- template: /eng/pipelines/common/templates/single-stage-pipeline-with-resources.yml
+ template: /eng/pipelines/common/templates/pipeline-with-resources.yml
parameters:
- jobs:
- - job: EnterpriseLinuxTests
- timeoutInMinutes: 120
- pool:
- name: NetCore-Public
- demands: ImageOverride -equals Build.Ubuntu.1804.Amd64.Open
- steps:
- - bash: |
- cd $(enterpriseTestsSetup)
- docker-compose build
- displayName: Build test machine images
- env:
- DOTNET_RUNTIME_REPO_ROOT: $(Build.SourcesDirectory)
+ stages:
+ - stage: Build
+ jobs:
+ - job: EnterpriseLinuxTests
+ timeoutInMinutes: 120
+ pool:
+ name: NetCore-Public
+ demands: ImageOverride -equals Build.Ubuntu.1804.Amd64.Open
+ steps:
+ - bash: |
+ cd $(enterpriseTestsSetup)
+ docker-compose build
+ displayName: Build test machine images
+ env:
+ DOTNET_RUNTIME_REPO_ROOT: $(Build.SourcesDirectory)
- - bash: |
- cd $(enterpriseTestsSetup)
- docker-compose up -d
- displayName: Start test network and machines
- env:
- DOTNET_RUNTIME_REPO_ROOT: $(Build.SourcesDirectory)
+ - bash: |
+ cd $(enterpriseTestsSetup)
+ docker-compose up -d
+ displayName: Start test network and machines
+ env:
+ DOTNET_RUNTIME_REPO_ROOT: $(Build.SourcesDirectory)
- - bash: |
- docker exec linuxclient bash /setup/test-webserver.sh
- displayName: Test linuxclient connection to web server
+ - bash: |
+ docker exec linuxclient bash /setup/test-webserver.sh
+ displayName: Test linuxclient connection to web server
- - bash: |
- docker exec linuxclient bash -c '/repo/build.sh -subset clr+libs -runtimeconfiguration release -ci /p:NativeOptimizationDataSupported=false'
- docker exec linuxclient bash -c '/repo/dotnet.sh build $(containerLibrariesRoot)/System.Net.Http/tests/EnterpriseTests/System.Net.Http.Enterprise.Tests.csproj'
- docker exec linuxclient bash -c '/repo/dotnet.sh build $(containerLibrariesRoot)/System.Net.Security/tests/EnterpriseTests/System.Net.Security.Enterprise.Tests.csproj'
- displayName: Build product sources
+ - bash: |
+ docker exec linuxclient bash -c '/repo/build.sh -subset clr+libs -runtimeconfiguration release -ci /p:NativeOptimizationDataSupported=false'
+ docker exec linuxclient bash -c '/repo/dotnet.sh build $(containerLibrariesRoot)/System.Net.Http/tests/EnterpriseTests/System.Net.Http.Enterprise.Tests.csproj'
+ docker exec linuxclient bash -c '/repo/dotnet.sh build $(containerLibrariesRoot)/System.Net.Security/tests/EnterpriseTests/System.Net.Security.Enterprise.Tests.csproj'
+ displayName: Build product sources
- - bash: |
- docker exec linuxclient bash -c 'if [ -f /erc/resolv.conf.ORI ]; then cp -f /erc/resolv.conf.ORI /etc/resolv.conf; fi'
- docker exec linuxclient $(containerRunTestsCommand) $(containerLibrariesRoot)/System.Net.Http/tests/EnterpriseTests/System.Net.Http.Enterprise.Tests.csproj
- docker exec linuxclient $(containerRunTestsCommand) $(containerLibrariesRoot)/System.Net.Security/tests/EnterpriseTests/System.Net.Security.Enterprise.Tests.csproj
- displayName: Build and run tests
+ - bash: |
+ docker exec linuxclient bash -c 'if [ -f /erc/resolv.conf.ORI ]; then cp -f /erc/resolv.conf.ORI /etc/resolv.conf; fi'
+ docker exec linuxclient $(containerRunTestsCommand) $(containerLibrariesRoot)/System.Net.Http/tests/EnterpriseTests/System.Net.Http.Enterprise.Tests.csproj
+ docker exec linuxclient $(containerRunTestsCommand) $(containerLibrariesRoot)/System.Net.Security/tests/EnterpriseTests/System.Net.Security.Enterprise.Tests.csproj
+ displayName: Build and run tests
- - bash: |
- cd $(enterpriseTestsSetup)
- docker-compose down
- displayName: Stop test network and machines
- env:
- DOTNET_RUNTIME_REPO_ROOT: $(Build.SourcesDirectory)
+ - bash: |
+ cd $(enterpriseTestsSetup)
+ docker-compose down
+ displayName: Stop test network and machines
+ env:
+ DOTNET_RUNTIME_REPO_ROOT: $(Build.SourcesDirectory)
- - task: PublishTestResults@2
- inputs:
- testRunner: 'xUnit'
- testResultsFiles: '**/testResults.xml'
- testRunTitle: 'Enterprise Tests'
- mergeTestResults: true
- failTaskOnFailedTests: true
+ - task: PublishTestResults@2
+ inputs:
+ testRunner: 'xUnit'
+ testResultsFiles: '**/testResults.xml'
+ testRunTitle: 'Enterprise Tests'
+ mergeTestResults: true
+ failTaskOnFailedTests: true
- template: variables.yml
extends:
- template: /eng/pipelines/common/templates/single-stage-pipeline-with-resources.yml
+ template: /eng/pipelines/common/templates/pipeline-with-resources.yml
parameters:
- jobs:
+ stages:
+ - stage: Build
+ jobs:
- - 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
- platforms:
- - windows_x86
- - Browser_wasm
- - ${{ if eq(variables['isRollingBuild'], true) }}:
- - windows_x64
- - Linux_x64
- - Linux_arm
- - Linux_musl_x64
- - OSX_x64
- jobParameters:
- testScope: outerloop
- nameSuffix: AllSubsets_Mono
- buildArgs: -s mono+libs+libs.tests -c $(_BuildConfig) -testscope outerloop /p:ArchiveTests=true
- timeoutInMinutes: 180
- includeAllPlatforms: ${{ variables['isRollingBuild'] }}
- # extra steps, run tests
- extraStepsTemplate: /eng/pipelines/libraries/helix.yml
- extraStepsParameters:
- scenarios:
- - WasmTestOnBrowser
- testScope: outerloop
- creator: dotnet-bot
- testRunNamePrefixSuffix: Mono_$(_BuildConfig)
-
- - ${{ if eq(variables['isRollingBuild'], false) }}:
- 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: Debug
+ buildConfig: Release
runtimeFlavor: mono
platforms:
- - windows_x64
- - Linux_x64
- - Linux_musl_x64
- - OSX_x64
- - Android_arm64
+ - windows_x86
+ - Browser_wasm
+ - ${{ if eq(variables['isRollingBuild'], true) }}:
+ - windows_x64
+ - Linux_x64
+ - Linux_arm
+ - Linux_musl_x64
+ - OSX_x64
jobParameters:
testScope: outerloop
nameSuffix: AllSubsets_Mono
# extra steps, run tests
extraStepsTemplate: /eng/pipelines/libraries/helix.yml
extraStepsParameters:
+ scenarios:
+ - WasmTestOnBrowser
testScope: outerloop
creator: dotnet-bot
testRunNamePrefixSuffix: Mono_$(_BuildConfig)
+
+ - ${{ if eq(variables['isRollingBuild'], false) }}:
+ - 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: Debug
+ runtimeFlavor: mono
+ platforms:
+ - windows_x64
+ - Linux_x64
+ - Linux_musl_x64
+ - OSX_x64
+ - Android_arm64
+ jobParameters:
+ testScope: outerloop
+ nameSuffix: AllSubsets_Mono
+ buildArgs: -s mono+libs+libs.tests -c $(_BuildConfig) -testscope outerloop /p:ArchiveTests=true
+ timeoutInMinutes: 180
+ includeAllPlatforms: ${{ variables['isRollingBuild'] }}
+ # extra steps, run tests
+ extraStepsTemplate: /eng/pipelines/libraries/helix.yml
+ extraStepsParameters:
+ testScope: outerloop
+ creator: dotnet-bot
+ testRunNamePrefixSuffix: Mono_$(_BuildConfig)
- template: variables.yml
extends:
- template: /eng/pipelines/common/templates/single-stage-pipeline-with-resources.yml
+ template: /eng/pipelines/common/templates/pipeline-with-resources.yml
parameters:
- jobs:
+ stages:
+ - stage: Build
+ jobs:
- #
- # CoreCLR Build
- #
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/coreclr/templates/build-job.yml
- buildConfig: release
- platforms:
- - ${{ if eq(variables['includeWindowsOuterloop'], true) }}:
- - windows_x64
- - windows_x86
- - ${{ if eq(variables['includeLinuxOuterloop'], true) }}:
- - Linux_x64
- - Linux_musl_x64
- - ${{ if eq(variables['isRollingBuild'], true) }}:
- - Linux_arm
- - Linux_arm64
- - Linux_musl_arm64
- - ${{ if eq(variables['includeOsxOuterloop'], true) }}:
- - OSX_arm64
- - OSX_x64
- jobParameters:
- testGroup: innerloop
- #
- # Libraries Build
- #
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/libraries/build-job.yml
- buildConfig: Release
- platforms:
- - ${{ if eq(variables['includeWindowsOuterloop'], true) }}:
- - windows_x86
- - ${{ if eq(variables['isRollingBuild'], true) }}:
- - windows_x64
- - ${{ if eq(variables['includeLinuxOuterloop'], true) }}:
- - ${{ if eq(variables['isRollingBuild'], true) }}:
- - Linux_x64
- - Linux_arm
- - Linux_arm64
- - Linux_musl_x64
- - Linux_musl_arm64
- - ${{ if and(eq(variables['includeOsxOuterloop'], true), eq(variables['isRollingBuild'], true)) }}:
- - OSX_arm64
- - OSX_x64
- helixQueuesTemplate: /eng/pipelines/libraries/helix-queues-setup.yml
- jobParameters:
- isOfficialBuild: ${{ variables['isOfficialBuild'] }}
- includeAllPlatforms: ${{ variables['isRollingBuild'] }}
- runTests: true
- testScope: outerloop
- liveRuntimeBuildConfig: release
-
- - ${{ if eq(variables['isRollingBuild'], false) }}:
+ #
+ # CoreCLR Build
+ #
- template: /eng/pipelines/common/platform-matrix.yml
parameters:
- jobTemplate: /eng/pipelines/libraries/build-job.yml
- buildConfig: Debug
+ jobTemplate: /eng/pipelines/coreclr/templates/build-job.yml
+ buildConfig: release
platforms:
- ${{ if eq(variables['includeWindowsOuterloop'], true) }}:
- windows_x64
+ - windows_x86
- ${{ if eq(variables['includeLinuxOuterloop'], true) }}:
- Linux_x64
- Linux_musl_x64
+ - ${{ if eq(variables['isRollingBuild'], true) }}:
+ - Linux_arm
+ - Linux_arm64
+ - Linux_musl_arm64
- ${{ if eq(variables['includeOsxOuterloop'], true) }}:
- OSX_arm64
- OSX_x64
- helixQueuesTemplate: /eng/pipelines/libraries/helix-queues-setup.yml
jobParameters:
- isOfficialBuild: ${{ variables['isOfficialBuild'] }}
- includeAllPlatforms: ${{ variables['isRollingBuild'] }}
- runTests: true
- testScope: outerloop
- liveRuntimeBuildConfig: release
-
- - ${{ if eq(variables['includeWindowsOuterloop'], true) }}:
+ testGroup: innerloop
+ #
+ # Libraries Build
+ #
- template: /eng/pipelines/common/platform-matrix.yml
parameters:
jobTemplate: /eng/pipelines/libraries/build-job.yml
buildConfig: Release
platforms:
- - windows_x86
- - ${{ if eq(variables['isRollingBuild'], true) }}:
- - windows_x64
+ - ${{ if eq(variables['includeWindowsOuterloop'], true) }}:
+ - windows_x86
+ - ${{ if eq(variables['isRollingBuild'], true) }}:
+ - windows_x64
+ - ${{ if eq(variables['includeLinuxOuterloop'], true) }}:
+ - ${{ if eq(variables['isRollingBuild'], true) }}:
+ - Linux_x64
+ - Linux_arm
+ - Linux_arm64
+ - Linux_musl_x64
+ - Linux_musl_arm64
+ - ${{ if and(eq(variables['includeOsxOuterloop'], true), eq(variables['isRollingBuild'], true)) }}:
+ - OSX_arm64
+ - OSX_x64
helixQueuesTemplate: /eng/pipelines/libraries/helix-queues-setup.yml
jobParameters:
isOfficialBuild: ${{ variables['isOfficialBuild'] }}
includeAllPlatforms: ${{ variables['isRollingBuild'] }}
- framework: net48
runTests: true
testScope: outerloop
+ liveRuntimeBuildConfig: release
+
+ - ${{ if eq(variables['isRollingBuild'], false) }}:
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/libraries/build-job.yml
+ buildConfig: Debug
+ platforms:
+ - ${{ if eq(variables['includeWindowsOuterloop'], true) }}:
+ - windows_x64
+ - ${{ if eq(variables['includeLinuxOuterloop'], true) }}:
+ - Linux_x64
+ - Linux_musl_x64
+ - ${{ if eq(variables['includeOsxOuterloop'], true) }}:
+ - OSX_arm64
+ - OSX_x64
+ helixQueuesTemplate: /eng/pipelines/libraries/helix-queues-setup.yml
+ jobParameters:
+ isOfficialBuild: ${{ variables['isOfficialBuild'] }}
+ includeAllPlatforms: ${{ variables['isRollingBuild'] }}
+ runTests: true
+ testScope: outerloop
+ liveRuntimeBuildConfig: release
+
+ - ${{ if eq(variables['includeWindowsOuterloop'], true) }}:
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/libraries/build-job.yml
+ buildConfig: Release
+ platforms:
+ - windows_x86
+ - ${{ if eq(variables['isRollingBuild'], true) }}:
+ - windows_x64
+ helixQueuesTemplate: /eng/pipelines/libraries/helix-queues-setup.yml
+ jobParameters:
+ isOfficialBuild: ${{ variables['isOfficialBuild'] }}
+ includeAllPlatforms: ${{ variables['isRollingBuild'] }}
+ framework: net48
+ runTests: true
+ testScope: outerloop
extends:
- template: /eng/pipelines/common/templates/single-stage-pipeline-with-resources.yml
+ template: /eng/pipelines/common/templates/pipeline-with-resources.yml
parameters:
- jobs:
- - job: linux
- displayName: Docker Linux
- timeoutInMinutes: 180
- variables:
- DUMPS_SHARE_MOUNT_ROOT: "/dumps-share"
- pool:
- name: NetCore-Public
- demands: ImageOverride -equals 1es-ubuntu-1804-open
-
- steps:
- - checkout: self
- clean: true
- fetchDepth: 5
-
- - bash: |
- $(dockerfilesFolder)/build-docker-sdk.sh -t $(sdkBaseImage) -c $(BUILD_CONFIGURATION) && \
- echo "##vso[task.setvariable variable=succeeded;isOutput=true]true"
- name: buildRuntime
- displayName: Build CLR and Libraries
-
- - bash: |
- $(httpStressProject)/run-docker-compose.sh -o -c $(BUILD_CONFIGURATION) -t $(sdkBaseImage) && \
- echo "##vso[task.setvariable variable=succeeded;isOutput=true]true"
- name: buildStress
- displayName: Build HttpStress
-
- - bash: |
- cd '$(httpStressProject)'
- export CLIENT_DUMPS_SHARE="$(Build.ArtifactStagingDirectory)/dumps/client/3.0"
- export SERVER_DUMPS_SHARE="$(Build.ArtifactStagingDirectory)/dumps/server/3.0"
- export HTTPSTRESS_CLIENT_ARGS="$HTTPSTRESS_CLIENT_ARGS -http 3.0"
- export HTTPSTRESS_SERVER_ARGS="$HTTPSTRESS_SERVER_ARGS -http 3.0"
- docker-compose up --abort-on-container-exit --no-color
- timeoutInMinutes: 35 # In case the HTTP/3.0 run hangs, we timeout shortly after the expected 30 minute run
- displayName: Run HttpStress - HTTP 3.0
- condition: and(eq(variables['buildRuntime.succeeded'], 'true'), eq(variables['buildStress.succeeded'], 'true'))
-
- - bash: |
- cd '$(httpStressProject)'
- export CLIENT_DUMPS_SHARE="$(Build.ArtifactStagingDirectory)/dumps/client/2.0"
- export SERVER_DUMPS_SHARE="$(Build.ArtifactStagingDirectory)/dumps/server/2.0"
- export HTTPSTRESS_CLIENT_ARGS="$HTTPSTRESS_CLIENT_ARGS -http 2.0"
- export HTTPSTRESS_SERVER_ARGS="$HTTPSTRESS_SERVER_ARGS -http 2.0"
- docker-compose up --abort-on-container-exit --no-color
- displayName: Run HttpStress - HTTP 2.0
- condition: and(eq(variables['buildRuntime.succeeded'], 'true'), eq(variables['buildStress.succeeded'], 'true'))
-
- - bash: |
- cd '$(httpStressProject)'
- export CLIENT_DUMPS_SHARE="$(Build.ArtifactStagingDirectory)/dumps/client/1.1"
- export SERVER_DUMPS_SHARE="$(Build.ArtifactStagingDirectory)/dumps/server/1.1"
- export HTTPSTRESS_CLIENT_ARGS="$HTTPSTRESS_CLIENT_ARGS -http 1.1"
- export HTTPSTRESS_SERVER_ARGS="$HTTPSTRESS_SERVER_ARGS -http 1.1"
- docker-compose up --abort-on-container-exit --no-color
- displayName: Run HttpStress - HTTP 1.1
- condition: and(eq(variables['buildRuntime.succeeded'], 'true'), eq(variables['buildStress.succeeded'], 'true'))
-
- - bash: |
- sudo chown -R $(id -u):$(id -g) $(Build.ArtifactStagingDirectory)/dumps
- displayName: Own shared dumps and files
- condition: failed()
-
- - publish: $(Build.ArtifactStagingDirectory)/dumps
- artifact: DumpsLinux
- condition: failed()
-
- - job: windows
- displayName: Docker NanoServer
- timeoutInMinutes: 150
- variables:
- DUMPS_SHARE_MOUNT_ROOT: "C:/dumps-share"
- pool:
- name: NetCore-Public
- demands: ImageOverride -equals 1es-windows-2022-open
-
- steps:
- - checkout: self
- clean: true
- fetchDepth: 5
- lfs: false
-
- - powershell: |
- $(dockerfilesFolder)/build-docker-sdk.ps1 -w -t $(sdkBaseImage) -c $(BUILD_CONFIGURATION)
- echo "##vso[task.setvariable variable=succeeded;isOutput=true]true"
- name: buildRuntime
- displayName: Build CLR and Libraries
-
- - powershell: |
- $(httpStressProject)/run-docker-compose.ps1 -w -o -c $(BUILD_CONFIGURATION) -t $(sdkBaseImage)
- echo "##vso[task.setvariable variable=succeeded;isOutput=true]true"
- name: buildStress
- displayName: Build HttpStress
-
- # Firewall is disabled for the test runs, since it can lead to unexpected TCP failures on CI machines, which are unrelated to the HTTP logic.
- # See: https://github.com/dotnet/runtime/issues/50854
- - powershell: |
- Set-NetFirewallProfile -Profile Domain, Public, Private -Enabled False
- name: disableFirewall
- displayName: Disable Firewall
-
- - powershell: |
- cd '$(httpStressProject)'
- $env:CLIENT_DUMPS_SHARE="$(Build.ArtifactStagingDirectory)/dumps/client/2.0"
- $env:SERVER_DUMPS_SHARE="$(Build.ArtifactStagingDirectory)/dumps/server/2.0"
- New-Item -Force $env:CLIENT_DUMPS_SHARE -ItemType Directory
- New-Item -Force $env:SERVER_DUMPS_SHARE -ItemType Directory
- $env:HTTPSTRESS_CLIENT_ARGS = "$env:HTTPSTRESS_CLIENT_ARGS -http 2.0"
- $env:HTTPSTRESS_SERVER_ARGS = "$env:HTTPSTRESS_SERVER_ARGS -http 2.0"
- docker-compose up --abort-on-container-exit --no-color
- displayName: Run HttpStress - HTTP 2.0
- condition: and(eq(variables['buildRuntime.succeeded'], 'true'), eq(variables['buildStress.succeeded'], 'true'))
-
- - powershell: |
- cd '$(httpStressProject)'
- $env:CLIENT_DUMPS_SHARE="$(Build.ArtifactStagingDirectory)/dumps/client/1.1"
- $env:SERVER_DUMPS_SHARE="$(Build.ArtifactStagingDirectory)/dumps/server/1.1"
- New-Item -Force $env:CLIENT_DUMPS_SHARE -ItemType Directory
- New-Item -Force $env:SERVER_DUMPS_SHARE -ItemType Directory
- $env:HTTPSTRESS_CLIENT_ARGS = "$env:HTTPSTRESS_CLIENT_ARGS -http 1.1"
- $env:HTTPSTRESS_SERVER_ARGS = "$env:HTTPSTRESS_SERVER_ARGS -http 1.1"
- docker-compose up --abort-on-container-exit --no-color
- displayName: Run HttpStress - HTTP 1.1
- condition: and(eq(variables['buildRuntime.succeeded'], 'true'), eq(variables['buildStress.succeeded'], 'true'))
-
- - publish: $(Build.ArtifactStagingDirectory)/dumps
- artifact: DumpsWindows
- condition: failed()
-
- - powershell: |
- Set-NetFirewallProfile -Profile Domain, Public, Private -Enabled True
- name: enableFirewall
- displayName: Enable Firewall
+ stages:
+ - stage: Build
+ jobs:
+ - job: linux
+ displayName: Docker Linux
+ timeoutInMinutes: 180
+ variables:
+ DUMPS_SHARE_MOUNT_ROOT: "/dumps-share"
+ pool:
+ name: NetCore-Public
+ demands: ImageOverride -equals 1es-ubuntu-1804-open
+
+ steps:
+ - checkout: self
+ clean: true
+ fetchDepth: 5
+
+ - bash: |
+ $(dockerfilesFolder)/build-docker-sdk.sh -t $(sdkBaseImage) -c $(BUILD_CONFIGURATION) && \
+ echo "##vso[task.setvariable variable=succeeded;isOutput=true]true"
+ name: buildRuntime
+ displayName: Build CLR and Libraries
+
+ - bash: |
+ $(httpStressProject)/run-docker-compose.sh -o -c $(BUILD_CONFIGURATION) -t $(sdkBaseImage) && \
+ echo "##vso[task.setvariable variable=succeeded;isOutput=true]true"
+ name: buildStress
+ displayName: Build HttpStress
+
+ - bash: |
+ cd '$(httpStressProject)'
+ export CLIENT_DUMPS_SHARE="$(Build.ArtifactStagingDirectory)/dumps/client/3.0"
+ export SERVER_DUMPS_SHARE="$(Build.ArtifactStagingDirectory)/dumps/server/3.0"
+ export HTTPSTRESS_CLIENT_ARGS="$HTTPSTRESS_CLIENT_ARGS -http 3.0"
+ export HTTPSTRESS_SERVER_ARGS="$HTTPSTRESS_SERVER_ARGS -http 3.0"
+ docker-compose up --abort-on-container-exit --no-color
+ timeoutInMinutes: 35 # In case the HTTP/3.0 run hangs, we timeout shortly after the expected 30 minute run
+ displayName: Run HttpStress - HTTP 3.0
+ condition: and(eq(variables['buildRuntime.succeeded'], 'true'), eq(variables['buildStress.succeeded'], 'true'))
+
+ - bash: |
+ cd '$(httpStressProject)'
+ export CLIENT_DUMPS_SHARE="$(Build.ArtifactStagingDirectory)/dumps/client/2.0"
+ export SERVER_DUMPS_SHARE="$(Build.ArtifactStagingDirectory)/dumps/server/2.0"
+ export HTTPSTRESS_CLIENT_ARGS="$HTTPSTRESS_CLIENT_ARGS -http 2.0"
+ export HTTPSTRESS_SERVER_ARGS="$HTTPSTRESS_SERVER_ARGS -http 2.0"
+ docker-compose up --abort-on-container-exit --no-color
+ displayName: Run HttpStress - HTTP 2.0
+ condition: and(eq(variables['buildRuntime.succeeded'], 'true'), eq(variables['buildStress.succeeded'], 'true'))
+
+ - bash: |
+ cd '$(httpStressProject)'
+ export CLIENT_DUMPS_SHARE="$(Build.ArtifactStagingDirectory)/dumps/client/1.1"
+ export SERVER_DUMPS_SHARE="$(Build.ArtifactStagingDirectory)/dumps/server/1.1"
+ export HTTPSTRESS_CLIENT_ARGS="$HTTPSTRESS_CLIENT_ARGS -http 1.1"
+ export HTTPSTRESS_SERVER_ARGS="$HTTPSTRESS_SERVER_ARGS -http 1.1"
+ docker-compose up --abort-on-container-exit --no-color
+ displayName: Run HttpStress - HTTP 1.1
+ condition: and(eq(variables['buildRuntime.succeeded'], 'true'), eq(variables['buildStress.succeeded'], 'true'))
+
+ - bash: |
+ sudo chown -R $(id -u):$(id -g) $(Build.ArtifactStagingDirectory)/dumps
+ displayName: Own shared dumps and files
+ condition: failed()
+
+ - publish: $(Build.ArtifactStagingDirectory)/dumps
+ artifact: DumpsLinux
+ condition: failed()
+
+ - job: windows
+ displayName: Docker NanoServer
+ timeoutInMinutes: 150
+ variables:
+ DUMPS_SHARE_MOUNT_ROOT: "C:/dumps-share"
+ pool:
+ name: NetCore-Public
+ demands: ImageOverride -equals 1es-windows-2022-open
+
+ steps:
+ - checkout: self
+ clean: true
+ fetchDepth: 5
+ lfs: false
+
+ - powershell: |
+ $(dockerfilesFolder)/build-docker-sdk.ps1 -w -t $(sdkBaseImage) -c $(BUILD_CONFIGURATION)
+ echo "##vso[task.setvariable variable=succeeded;isOutput=true]true"
+ name: buildRuntime
+ displayName: Build CLR and Libraries
+
+ - powershell: |
+ $(httpStressProject)/run-docker-compose.ps1 -w -o -c $(BUILD_CONFIGURATION) -t $(sdkBaseImage)
+ echo "##vso[task.setvariable variable=succeeded;isOutput=true]true"
+ name: buildStress
+ displayName: Build HttpStress
+
+ # Firewall is disabled for the test runs, since it can lead to unexpected TCP failures on CI machines, which are unrelated to the HTTP logic.
+ # See: https://github.com/dotnet/runtime/issues/50854
+ - powershell: |
+ Set-NetFirewallProfile -Profile Domain, Public, Private -Enabled False
+ name: disableFirewall
+ displayName: Disable Firewall
+
+ - powershell: |
+ cd '$(httpStressProject)'
+ $env:CLIENT_DUMPS_SHARE="$(Build.ArtifactStagingDirectory)/dumps/client/2.0"
+ $env:SERVER_DUMPS_SHARE="$(Build.ArtifactStagingDirectory)/dumps/server/2.0"
+ New-Item -Force $env:CLIENT_DUMPS_SHARE -ItemType Directory
+ New-Item -Force $env:SERVER_DUMPS_SHARE -ItemType Directory
+ $env:HTTPSTRESS_CLIENT_ARGS = "$env:HTTPSTRESS_CLIENT_ARGS -http 2.0"
+ $env:HTTPSTRESS_SERVER_ARGS = "$env:HTTPSTRESS_SERVER_ARGS -http 2.0"
+ docker-compose up --abort-on-container-exit --no-color
+ displayName: Run HttpStress - HTTP 2.0
+ condition: and(eq(variables['buildRuntime.succeeded'], 'true'), eq(variables['buildStress.succeeded'], 'true'))
+
+ - powershell: |
+ cd '$(httpStressProject)'
+ $env:CLIENT_DUMPS_SHARE="$(Build.ArtifactStagingDirectory)/dumps/client/1.1"
+ $env:SERVER_DUMPS_SHARE="$(Build.ArtifactStagingDirectory)/dumps/server/1.1"
+ New-Item -Force $env:CLIENT_DUMPS_SHARE -ItemType Directory
+ New-Item -Force $env:SERVER_DUMPS_SHARE -ItemType Directory
+ $env:HTTPSTRESS_CLIENT_ARGS = "$env:HTTPSTRESS_CLIENT_ARGS -http 1.1"
+ $env:HTTPSTRESS_SERVER_ARGS = "$env:HTTPSTRESS_SERVER_ARGS -http 1.1"
+ docker-compose up --abort-on-container-exit --no-color
+ displayName: Run HttpStress - HTTP 1.1
+ condition: and(eq(variables['buildRuntime.succeeded'], 'true'), eq(variables['buildStress.succeeded'], 'true'))
+
+ - publish: $(Build.ArtifactStagingDirectory)/dumps
+ artifact: DumpsWindows
+ condition: failed()
+
+ - powershell: |
+ Set-NetFirewallProfile -Profile Domain, Public, Private -Enabled True
+ name: enableFirewall
+ displayName: Enable Firewall
extends:
- template: /eng/pipelines/common/templates/single-stage-pipeline-with-resources.yml
+ template: /eng/pipelines/common/templates/pipeline-with-resources.yml
parameters:
- jobs:
+ stages:
+ - stage: Build
+ jobs:
- - job: linux
- displayName: Docker Linux
- timeoutInMinutes: 120
- pool:
- name: NetCore-Public
- demands: ImageOverride -equals Build.Ubuntu.1804.Amd64.Open
+ - job: linux
+ displayName: Docker Linux
+ timeoutInMinutes: 120
+ pool:
+ name: NetCore-Public
+ demands: ImageOverride -equals Build.Ubuntu.1804.Amd64.Open
- steps:
- - checkout: self
- clean: true
- fetchDepth: 5
+ steps:
+ - checkout: self
+ clean: true
+ fetchDepth: 5
- - bash: |
- $(dockerfilesFolder)/build-docker-sdk.sh -t $(sdkBaseImage) -c $(BUILD_CONFIGURATION)
- displayName: Build CLR and Libraries
+ - bash: |
+ $(dockerfilesFolder)/build-docker-sdk.sh -t $(sdkBaseImage) -c $(BUILD_CONFIGURATION)
+ displayName: Build CLR and Libraries
- - bash: |
- $(sslStressProject)/run-docker-compose.sh -o -c $(BUILD_CONFIGURATION) -t $(sdkBaseImage)
- displayName: Build SslStress
+ - bash: |
+ $(sslStressProject)/run-docker-compose.sh -o -c $(BUILD_CONFIGURATION) -t $(sdkBaseImage)
+ displayName: Build SslStress
- - bash: |
- cd '$(sslStressProject)'
- docker-compose up --abort-on-container-exit --no-color
- displayName: Run SslStress
+ - bash: |
+ cd '$(sslStressProject)'
+ docker-compose up --abort-on-container-exit --no-color
+ displayName: Run SslStress
- - job: windows
- displayName: Docker NanoServer
- timeoutInMinutes: 120
- pool:
- name: NetCore-Public
- demands: ImageOverride -equals 1es-windows-2022-open
+ - job: windows
+ displayName: Docker NanoServer
+ timeoutInMinutes: 120
+ pool:
+ name: NetCore-Public
+ demands: ImageOverride -equals 1es-windows-2022-open
- steps:
- - checkout: self
- clean: true
- fetchDepth: 5
- lfs: false
+ steps:
+ - checkout: self
+ clean: true
+ fetchDepth: 5
+ lfs: false
- - powershell: |
- $(dockerfilesFolder)/build-docker-sdk.ps1 -w -t $(sdkBaseImage) -c $(BUILD_CONFIGURATION)
- displayName: Build CLR and Libraries
+ - powershell: |
+ $(dockerfilesFolder)/build-docker-sdk.ps1 -w -t $(sdkBaseImage) -c $(BUILD_CONFIGURATION)
+ displayName: Build CLR and Libraries
- - powershell: |
- $(sslStressProject)/run-docker-compose.ps1 -w -o -c $(BUILD_CONFIGURATION) -t $(sdkBaseImage)
- displayName: Build SslStress
+ - powershell: |
+ $(sslStressProject)/run-docker-compose.ps1 -w -o -c $(BUILD_CONFIGURATION) -t $(sdkBaseImage)
+ displayName: Build SslStress
- - powershell: |
- cd '$(sslStressProject)'
- docker-compose up --abort-on-container-exit --no-color
- displayName: Run SslStress
+ - powershell: |
+ cd '$(sslStressProject)'
+ docker-compose up --abort-on-container-exit --no-color
+ displayName: Run SslStress
- template: /eng/pipelines/common/variables.yml
extends:
- template: /eng/pipelines/common/templates/single-stage-pipeline-with-resources.yml
+ template: /eng/pipelines/common/templates/pipeline-with-resources.yml
parameters:
- jobs:
+ stages:
+ - stage: Build
+ jobs:
- #
- # Android emulators
- # Build the whole product using Mono and run libraries 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
- platforms:
- - Android_x64
- jobParameters:
- testGroup: innerloop
- nameSuffix: AllSubsets_Mono_gRPC
- buildArgs: -s mono+libs+host+packs+libs.tests -c $(_BuildConfig) /p:ArchiveTests=true /p:RunGrpcTestsOnly=true /p:BuildGrpcServerDockerImage=true
- timeoutInMinutes: 180
- # extra steps, run tests
- extraStepsTemplate: /eng/pipelines/libraries/helix.yml
- extraStepsParameters:
- creator: dotnet-bot
- extraHelixArguments: /p:RunGrpcTestsOnly=true /p:BuildGrpcServerDockerImage=true
- testRunNamePrefixSuffix: Mono_$(_BuildConfig)
+ #
+ # Android emulators
+ # Build the whole product using Mono and run libraries 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
+ platforms:
+ - Android_x64
+ jobParameters:
+ testGroup: innerloop
+ nameSuffix: AllSubsets_Mono_gRPC
+ buildArgs: -s mono+libs+host+packs+libs.tests -c $(_BuildConfig) /p:ArchiveTests=true /p:RunGrpcTestsOnly=true /p:BuildGrpcServerDockerImage=true
+ timeoutInMinutes: 180
+ # extra steps, run tests
+ extraStepsTemplate: /eng/pipelines/libraries/helix.yml
+ extraStepsParameters:
+ creator: dotnet-bot
+ extraHelixArguments: /p:RunGrpcTestsOnly=true /p:BuildGrpcServerDockerImage=true
+ testRunNamePrefixSuffix: Mono_$(_BuildConfig)
- template: /eng/pipelines/common/variables.yml
extends:
- template: /eng/pipelines/common/templates/single-stage-pipeline-with-resources.yml
+ template: /eng/pipelines/common/templates/pipeline-with-resources.yml
parameters:
- jobs:
- - template: /eng/pipelines/extra-platforms/runtime-extra-platforms-android.yml
- parameters:
- isExtraPlatformsBuild: ${{ variables.isExtraPlatformsBuild }}
- isAndroidOnlyBuild: ${{ variables.isAndroidOnlyBuild }}
- isRollingBuild: ${{ variables.isRollingBuild }}
+ stages:
+ - stage: Build
+ jobs:
+ - template: /eng/pipelines/extra-platforms/runtime-extra-platforms-android.yml
+ parameters:
+ isExtraPlatformsBuild: ${{ variables.isExtraPlatformsBuild }}
+ isAndroidOnlyBuild: ${{ variables.isAndroidOnlyBuild }}
+ isRollingBuild: ${{ variables.isRollingBuild }}
- template: /eng/pipelines/common/variables.yml
extends:
- template: /eng/pipelines/common/templates/single-stage-pipeline-with-resources.yml
+ template: /eng/pipelines/common/templates/pipeline-with-resources.yml
parameters:
- jobs:
- - template: /eng/pipelines/extra-platforms/runtime-extra-platforms-androidemulator.yml
- parameters:
- isExtraPlatformsBuild: ${{ variables.isExtraPlatformsBuild }}
- isAndroidEmulatorOnlyBuild: ${{ variables.isAndroidEmulatorOnlyBuild }}
- isRollingBuild: ${{ variables.isRollingBuild }}
+ stages:
+ - stage: Build
+ jobs:
+ - template: /eng/pipelines/extra-platforms/runtime-extra-platforms-androidemulator.yml
+ parameters:
+ isExtraPlatformsBuild: ${{ variables.isExtraPlatformsBuild }}
+ isAndroidEmulatorOnlyBuild: ${{ variables.isAndroidEmulatorOnlyBuild }}
+ isRollingBuild: ${{ variables.isRollingBuild }}
- template: /eng/pipelines/common/variables.yml
extends:
- template: /eng/pipelines/common/templates/single-stage-pipeline-with-resources.yml
+ template: /eng/pipelines/common/templates/pipeline-with-resources.yml
parameters:
- jobs:
+ stages:
+ - stage: Build
+ jobs:
- #
- # Build CoreCLR checked
- # Only when CoreCLR is changed
- #
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/coreclr/templates/build-job.yml
- buildConfig: checked
- platforms:
- - windows_x64
- jobParameters:
- testGroup: innerloop
+ #
+ # Build CoreCLR checked
+ # Only when CoreCLR is changed
+ #
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/coreclr/templates/build-job.yml
+ buildConfig: checked
+ platforms:
+ - windows_x64
+ jobParameters:
+ testGroup: innerloop
- #
- # Build CoreCLR release
- # Always as they are needed by Installer and we always build and test the Installer.
- #
+ #
+ # Build CoreCLR release
+ # Always as they are needed by Installer and we always build and test the Installer.
+ #
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/libraries/build-job.yml
- buildConfig: release
- platforms:
- - windows_x64
- jobParameters:
- testScope: innerloop
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/libraries/build-job.yml
+ buildConfig: release
+ platforms:
+ - windows_x64
+ jobParameters:
+ testScope: innerloop
- #
- # 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
+ #
+ # 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
- #
- # CoreCLR Test executions using live libraries
- # Only when CoreCLR is changed
- #
+ #
+ # 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:
- - windows_x64
- helixQueueGroup: cet
- helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
- jobParameters:
- testGroup: innerloop
- liveLibrariesBuildConfig: release
- useCodeFlowEnforcement: true
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/common/templates/runtimes/run-test-job.yml
+ buildConfig: checked
+ platforms:
+ - windows_x64
+ helixQueueGroup: cet
+ helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
+ jobParameters:
+ testGroup: innerloop
+ liveLibrariesBuildConfig: release
+ useCodeFlowEnforcement: true
- template: /eng/pipelines/common/variables.yml
extends:
- template: /eng/pipelines/common/templates/single-stage-pipeline-with-resources.yml
+ template: /eng/pipelines/common/templates/pipeline-with-resources.yml
parameters:
- jobs:
- #
- # Evaluate paths
- #
- - ${{ if eq(variables.dependOnEvaluatePaths, true) }}:
- - template: /eng/pipelines/common/evaluate-default-paths.yml
+ stages:
+ - stage: Build
+ jobs:
+ #
+ # Evaluate paths
+ #
+ - ${{ if eq(variables.dependOnEvaluatePaths, true) }}:
+ - template: /eng/pipelines/common/evaluate-default-paths.yml
- #
- # s390x & PPC64 little endian
- # Build the whole product using Mono and run libraries 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
- platforms:
- - Linux_s390x
- - Linux_ppc64le
- variables:
- # map dependencies variables to local variables
- - name: librariesContainsChange
- value: $[ dependencies.evaluate_paths.outputs['SetPathVars_libraries.containsChange'] ]
- - name: monoContainsChange
- value: $[ dependencies.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
- timeoutInMinutes: 180
- condition: >-
- or(
- eq(dependencies.evaluate_paths.outputs['SetPathVars_libraries.containsChange'], true),
- eq(dependencies.evaluate_paths.outputs['SetPathVars_mono_excluding_wasm.containsChange'], true),
- eq(variables['isRollingBuild'], true))
- # extra steps, run tests
- extraStepsTemplate: /eng/pipelines/libraries/helix.yml
- extraStepsParameters:
- creator: dotnet-bot
- testRunNamePrefixSuffix: Mono_$(_BuildConfig)
+ #
+ # s390x & PPC64 little endian
+ # Build the whole product using Mono and run libraries 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
+ platforms:
+ - Linux_s390x
+ - Linux_ppc64le
+ variables:
+ # map dependencies variables to local variables
+ - name: librariesContainsChange
+ value: $[ dependencies.evaluate_paths.outputs['SetPathVars_libraries.containsChange'] ]
+ - name: monoContainsChange
+ value: $[ dependencies.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
+ timeoutInMinutes: 180
condition: >-
or(
- eq(variables['librariesContainsChange'], true),
- eq(variables['monoContainsChange'], true),
- eq(variables['isRollingBuild'], true))
-
- #
- # Build the whole product using Mono
- #
- - 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
- platforms:
- - FreeBSD_x64
- variables:
- # map dependencies variables to local variables
- - name: librariesContainsChange
- value: $[ dependencies.evaluate_paths.outputs['SetPathVars_libraries.containsChange'] ]
- - name: monoContainsChange
- value: $[ dependencies.evaluate_paths.outputs['SetPathVars_mono_excluding_wasm.containsChange'] ]
- jobParameters:
- testScope: innerloop
- nameSuffix: AllSubsets_Mono
- buildArgs: -s mono+libs+host+packs -c $(_BuildConfig)
- timeoutInMinutes: 120
- condition: >-
- or(
- eq(dependencies.evaluate_paths.outputs['SetPathVars_libraries.containsChange'], true),
- eq(dependencies.evaluate_paths.outputs['SetPathVars_mono_excluding_wasm.containsChange'], true),
- eq(variables['isRollingBuild'], true))
-
- #
- # Build the whole product using Mono and run libraries 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
- platforms:
- - Linux_armv6
- variables:
- # map dependencies variables to local variables
- - name: librariesContainsChange
- value: $[ dependencies.evaluate_paths.outputs['SetPathVars_libraries.containsChange'] ]
- - name: monoContainsChange
- value: $[ dependencies.evaluate_paths.outputs['SetPathVars_mono_excluding_wasm.containsChange'] ]
- jobParameters:
- testScope: innerloop
- nameSuffix: AllSubsets_Mono
- buildArgs: -s mono+clr.iltools+clr.packages+libs+host+packs+libs.tests -c $(_BuildConfig) /p:ArchiveTests=true
- timeoutInMinutes: 120
- condition: >-
- or(
- eq(dependencies.evaluate_paths.outputs['SetPathVars_libraries.containsChange'], true),
- eq(dependencies.evaluate_paths.outputs['SetPathVars_mono_excluding_wasm.containsChange'], true),
- eq(variables['isRollingBuild'], true))
- ${{ if eq(variables['isRollingBuild'], true) }}:
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_libraries.containsChange'], true),
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_mono_excluding_wasm.containsChange'], true),
+ eq(variables['isRollingBuild'], true))
# extra steps, run tests
extraStepsTemplate: /eng/pipelines/libraries/helix.yml
extraStepsParameters:
creator: dotnet-bot
testRunNamePrefixSuffix: Mono_$(_BuildConfig)
+ condition: >-
+ or(
+ eq(variables['librariesContainsChange'], true),
+ eq(variables['monoContainsChange'], true),
+ eq(variables['isRollingBuild'], true))
+
+ #
+ # Build the whole product using Mono
+ #
+ - 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
+ platforms:
+ - FreeBSD_x64
+ variables:
+ # map dependencies variables to local variables
+ - name: librariesContainsChange
+ value: $[ dependencies.evaluate_paths.outputs['SetPathVars_libraries.containsChange'] ]
+ - name: monoContainsChange
+ value: $[ dependencies.evaluate_paths.outputs['SetPathVars_mono_excluding_wasm.containsChange'] ]
+ jobParameters:
+ testScope: innerloop
+ nameSuffix: AllSubsets_Mono
+ buildArgs: -s mono+libs+host+packs -c $(_BuildConfig)
+ timeoutInMinutes: 120
+ condition: >-
+ or(
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_libraries.containsChange'], true),
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_mono_excluding_wasm.containsChange'], true),
+ eq(variables['isRollingBuild'], true))
+
+ #
+ # Build the whole product using Mono and run libraries 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
+ platforms:
+ - Linux_armv6
+ variables:
+ # map dependencies variables to local variables
+ - name: librariesContainsChange
+ value: $[ dependencies.evaluate_paths.outputs['SetPathVars_libraries.containsChange'] ]
+ - name: monoContainsChange
+ value: $[ dependencies.evaluate_paths.outputs['SetPathVars_mono_excluding_wasm.containsChange'] ]
+ jobParameters:
+ testScope: innerloop
+ nameSuffix: AllSubsets_Mono
+ buildArgs: -s mono+clr.iltools+clr.packages+libs+host+packs+libs.tests -c $(_BuildConfig) /p:ArchiveTests=true
+ timeoutInMinutes: 120
+ condition: >-
+ or(
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_libraries.containsChange'], true),
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_mono_excluding_wasm.containsChange'], true),
+ eq(variables['isRollingBuild'], true))
+ ${{ if eq(variables['isRollingBuild'], true) }}:
+ # extra steps, run tests
+ extraStepsTemplate: /eng/pipelines/libraries/helix.yml
+ extraStepsParameters:
+ creator: dotnet-bot
+ testRunNamePrefixSuffix: Mono_$(_BuildConfig)
- template: /eng/pipelines/common/variables.yml
extends:
- template: /eng/pipelines/common/templates/single-stage-pipeline-with-resources.yml
+ template: /eng/pipelines/common/templates/pipeline-with-resources.yml
parameters:
- jobs:
+ stages:
+ - stage: Build
+ jobs:
- #
- # Evaluate paths
- #
- - ${{ if eq(variables.dependOnEvaluatePaths, true) }}:
- - template: /eng/pipelines/common/evaluate-default-paths.yml
+ #
+ # Evaluate paths
+ #
+ - ${{ if eq(variables.dependOnEvaluatePaths, true) }}:
+ - template: /eng/pipelines/common/evaluate-default-paths.yml
- # Add wasm jobs only for rolling builds
- - ${{ if eq(variables.isRollingBuild, true) }}:
- - template: /eng/pipelines/extra-platforms/runtime-extra-platforms-wasm.yml
+ # Add wasm jobs only for rolling builds
+ - ${{ if eq(variables.isRollingBuild, true) }}:
+ - template: /eng/pipelines/extra-platforms/runtime-extra-platforms-wasm.yml
+ parameters:
+ isExtraPlatformsBuild: ${{ variables.isExtraPlatformsBuild }}
+ isWasmOnlyBuild: ${{ variables.isWasmOnlyBuild }}
+ isRollingBuild: ${{ variables.isRollingBuild }}
+
+ # Add iOS/tvOS jobs
+ - template: /eng/pipelines/extra-platforms/runtime-extra-platforms-ioslike.yml
parameters:
isExtraPlatformsBuild: ${{ variables.isExtraPlatformsBuild }}
- isWasmOnlyBuild: ${{ variables.isWasmOnlyBuild }}
+ isiOSLikeOnlyBuild: ${{ variables.isiOSLikeOnlyBuild }}
isRollingBuild: ${{ variables.isRollingBuild }}
- # Add iOS/tvOS jobs
- - template: /eng/pipelines/extra-platforms/runtime-extra-platforms-ioslike.yml
- parameters:
- isExtraPlatformsBuild: ${{ variables.isExtraPlatformsBuild }}
- isiOSLikeOnlyBuild: ${{ variables.isiOSLikeOnlyBuild }}
- isRollingBuild: ${{ variables.isRollingBuild }}
-
- # Add iOS/tvOS simulator jobs
- - template: /eng/pipelines/extra-platforms/runtime-extra-platforms-ioslikesimulator.yml
- parameters:
- isExtraPlatformsBuild: ${{ variables.isExtraPlatformsBuild }}
- isiOSLikeSimulatorOnlyBuild: ${{ variables.isiOSLikeSimulatorOnlyBuild }}
- isRollingBuild: ${{ variables.isRollingBuild }}
-
- # Add Android jobs
- - template: /eng/pipelines/extra-platforms/runtime-extra-platforms-android.yml
- parameters:
- isExtraPlatformsBuild: ${{ variables.isExtraPlatformsBuild }}
- isAndroidOnlyBuild: ${{ variables.isAndroidOnlyBuild }}
- isRollingBuild: ${{ variables.isRollingBuild }}
+ # Add iOS/tvOS simulator jobs
+ - template: /eng/pipelines/extra-platforms/runtime-extra-platforms-ioslikesimulator.yml
+ parameters:
+ isExtraPlatformsBuild: ${{ variables.isExtraPlatformsBuild }}
+ isiOSLikeSimulatorOnlyBuild: ${{ variables.isiOSLikeSimulatorOnlyBuild }}
+ isRollingBuild: ${{ variables.isRollingBuild }}
- # Add Android emulator jobs
- - template: /eng/pipelines/extra-platforms/runtime-extra-platforms-androidemulator.yml
- parameters:
- isExtraPlatformsBuild: ${{ variables.isExtraPlatformsBuild }}
- isAndroidEmulatorOnlyBuild: ${{ variables.isAndroidEmulatorOnlyBuild }}
- isRollingBuild: ${{ variables.isRollingBuild }}
+ # Add Android jobs
+ - template: /eng/pipelines/extra-platforms/runtime-extra-platforms-android.yml
+ parameters:
+ isExtraPlatformsBuild: ${{ variables.isExtraPlatformsBuild }}
+ isAndroidOnlyBuild: ${{ variables.isAndroidOnlyBuild }}
+ isRollingBuild: ${{ variables.isRollingBuild }}
- # Add Mac Catalyst jobs
- - template: /eng/pipelines/extra-platforms/runtime-extra-platforms-maccatalyst.yml
- parameters:
- isExtraPlatformsBuild: ${{ variables.isExtraPlatformsBuild }}
- isMacCatalystOnlyBuild: ${{ variables.isMacCatalystOnlyBuild }}
- isRollingBuild: ${{ variables.isRollingBuild }}
+ # Add Android emulator jobs
+ - template: /eng/pipelines/extra-platforms/runtime-extra-platforms-androidemulator.yml
+ parameters:
+ isExtraPlatformsBuild: ${{ variables.isExtraPlatformsBuild }}
+ isAndroidEmulatorOnlyBuild: ${{ variables.isAndroidEmulatorOnlyBuild }}
+ isRollingBuild: ${{ variables.isRollingBuild }}
- # Add Linux Bionic jobs
- - template: /eng/pipelines/extra-platforms/runtime-extra-platforms-linuxbionic.yml
- parameters:
- isExtraPlatformsBuild: ${{ variables.isExtraPlatformsBuild }}
- isLinuxBionicOnlyBuild: ${{ variables.isLinuxBionicOnlyBuild }}
- isRollingBuild: ${{ variables.isRollingBuild }}
+ # Add Mac Catalyst jobs
+ - template: /eng/pipelines/extra-platforms/runtime-extra-platforms-maccatalyst.yml
+ parameters:
+ isExtraPlatformsBuild: ${{ variables.isExtraPlatformsBuild }}
+ isMacCatalystOnlyBuild: ${{ variables.isMacCatalystOnlyBuild }}
+ isRollingBuild: ${{ variables.isRollingBuild }}
- # Any jobs that are not specific to any platform
- - ${{ if eq(variables.isNotSpecificPlatformOnlyBuild, true) }}:
- - template: /eng/pipelines/extra-platforms/runtime-extra-platforms-other.yml
+ # Add Linux Bionic jobs
+ - template: /eng/pipelines/extra-platforms/runtime-extra-platforms-linuxbionic.yml
parameters:
isExtraPlatformsBuild: ${{ variables.isExtraPlatformsBuild }}
+ isLinuxBionicOnlyBuild: ${{ variables.isLinuxBionicOnlyBuild }}
+ isRollingBuild: ${{ variables.isRollingBuild }}
+
+ # Any jobs that are not specific to any platform
+ - ${{ if eq(variables.isNotSpecificPlatformOnlyBuild, true) }}:
+ - template: /eng/pipelines/extra-platforms/runtime-extra-platforms-other.yml
+ parameters:
+ isExtraPlatformsBuild: ${{ variables.isExtraPlatformsBuild }}
- template: /eng/pipelines/common/variables.yml
extends:
- template: /eng/pipelines/common/templates/single-stage-pipeline-with-resources.yml
+ template: /eng/pipelines/common/templates/pipeline-with-resources.yml
parameters:
- jobs:
- - template: /eng/pipelines/extra-platforms/runtime-extra-platforms-ioslike.yml
- parameters:
- isExtraPlatformsBuild: ${{ variables.isExtraPlatformsBuild }}
- isiOSLikeOnlyBuild: ${{ variables.isiOSLikeOnlyBuild }}
- isRollingBuild: ${{ variables.isRollingBuild }}
+ stages:
+ - stage: Build
+ jobs:
+ - template: /eng/pipelines/extra-platforms/runtime-extra-platforms-ioslike.yml
+ parameters:
+ isExtraPlatformsBuild: ${{ variables.isExtraPlatformsBuild }}
+ isiOSLikeOnlyBuild: ${{ variables.isiOSLikeOnlyBuild }}
+ isRollingBuild: ${{ variables.isRollingBuild }}
- template: /eng/pipelines/common/variables.yml
extends:
- template: /eng/pipelines/common/templates/single-stage-pipeline-with-resources.yml
+ template: /eng/pipelines/common/templates/pipeline-with-resources.yml
parameters:
- jobs:
- - template: /eng/pipelines/extra-platforms/runtime-extra-platforms-ioslikesimulator.yml
- parameters:
- isExtraPlatformsBuild: ${{ variables.isExtraPlatformsBuild }}
- isiOSLikeSimulatorOnlyBuild: ${{ variables.isiOSLikeSimulatorOnlyBuild }}
- isRollingBuild: ${{ variables.isRollingBuild }}
+ stages:
+ - stage: Build
+ jobs:
+ - template: /eng/pipelines/extra-platforms/runtime-extra-platforms-ioslikesimulator.yml
+ parameters:
+ isExtraPlatformsBuild: ${{ variables.isExtraPlatformsBuild }}
+ isiOSLikeSimulatorOnlyBuild: ${{ variables.isiOSLikeSimulatorOnlyBuild }}
+ isRollingBuild: ${{ variables.isRollingBuild }}
- template: /eng/pipelines/common/variables.yml
extends:
- template: /eng/pipelines/common/templates/single-stage-pipeline-with-resources.yml
+ template: /eng/pipelines/common/templates/pipeline-with-resources.yml
parameters:
- jobs:
+ stages:
+ - stage: Build
+ jobs:
- #
- # Evaluate paths
- #
- - ${{ if eq(variables.dependOnEvaluatePaths, true) }}:
- - template: /eng/pipelines/common/evaluate-default-paths.yml
+ #
+ # Evaluate paths
+ #
+ - ${{ if eq(variables.dependOnEvaluatePaths, true) }}:
+ - template: /eng/pipelines/common/evaluate-default-paths.yml
- #
- # Build and Test ILLink in Release config vertical for Windows, Linux and OSX
- #
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/common/global-build-job.yml
- buildConfig: release
- platforms:
- - windows_x64
- - OSX_x64
- - Linux_x64
- jobParameters:
- testGroup: innerloop
- timeoutInMinutes: 120
- nameSuffix: ILLink_Runtime_Testing
- condition:
- or(
- eq(dependencies.evaluate_paths.outputs['SetPathVars_tools_illink.containsChange'], true),
- eq(variables['isRollingBuild'], true))
- buildArgs: -s tools.illinktests -test -c $(_BuildConfig)
+ #
+ # Build and Test ILLink in Release config vertical for Windows, Linux and OSX
+ #
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/common/global-build-job.yml
+ buildConfig: release
+ platforms:
+ - windows_x64
+ - OSX_x64
+ - Linux_x64
+ jobParameters:
+ testGroup: innerloop
+ timeoutInMinutes: 120
+ nameSuffix: ILLink_Runtime_Testing
+ condition:
+ or(
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_tools_illink.containsChange'], true),
+ eq(variables['isRollingBuild'], true))
+ buildArgs: -s tools.illinktests -test -c $(_BuildConfig)
- #
- # Build Release config vertical for Windows, Linux, and OSX
- #
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/common/global-build-job.yml
- buildConfig: release
- platforms:
- - windows_x64
- - OSX_x64
- - Linux_x64
- jobParameters:
- testGroup: innerloop
- timeoutInMinutes: 120
- nameSuffix: Runtime_Release
- condition:
- or(
- eq(dependencies.evaluate_paths.outputs['SetPathVars_non_mono_and_wasm.containsChange'], true),
- eq(variables['isRollingBuild'], true))
- buildArgs: -s clr+libs -c $(_BuildConfig)
- extraStepsTemplate: /eng/pipelines/libraries/execute-trimming-tests-steps.yml
+ #
+ # Build Release config vertical for Windows, Linux, and OSX
+ #
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/common/global-build-job.yml
+ buildConfig: release
+ platforms:
+ - windows_x64
+ - OSX_x64
+ - Linux_x64
+ jobParameters:
+ testGroup: innerloop
+ timeoutInMinutes: 120
+ nameSuffix: Runtime_Release
+ condition:
+ or(
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_non_mono_and_wasm.containsChange'], true),
+ eq(variables['isRollingBuild'], true))
+ buildArgs: -s clr+libs -c $(_BuildConfig)
+ extraStepsTemplate: /eng/pipelines/libraries/execute-trimming-tests-steps.yml
- #
- # Build Release config vertical for Browser-wasm
- #
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/common/global-build-job.yml
- buildConfig: release
- platforms:
- - Browser_wasm
- jobParameters:
- testGroup: innerloop
- timeoutInMinutes: 120
- nameSuffix: Runtime_Release
- buildArgs: -s mono+libs -c $(_BuildConfig) -p:WasmBuildNative=false
- condition:
- or(
- eq(variables['isRollingBuild'], true),
- eq(dependencies.evaluate_paths.outputs['SetPathVars_wasm_libraries.containsChange'], true),
- eq(dependencies.evaluate_paths.outputs['SetPathVars_wasm.containsChange'], true),
- eq(dependencies.evaluate_paths.outputs['DarcDependenciesChanged.Microsoft_NET_ILLink_Tasks'], true))
- extraStepsTemplate: /eng/pipelines/libraries/execute-trimming-tests-steps.yml
- extraStepsParameters:
- extraTestArgs: '/p:WasmBuildNative=false'
+ #
+ # Build Release config vertical for Browser-wasm
+ #
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/common/global-build-job.yml
+ buildConfig: release
+ platforms:
+ - Browser_wasm
+ jobParameters:
+ testGroup: innerloop
+ timeoutInMinutes: 120
+ nameSuffix: Runtime_Release
+ buildArgs: -s mono+libs -c $(_BuildConfig) -p:WasmBuildNative=false
+ condition:
+ or(
+ eq(variables['isRollingBuild'], true),
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_wasm_libraries.containsChange'], true),
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_wasm.containsChange'], true),
+ eq(dependencies.evaluate_paths.outputs['DarcDependenciesChanged.Microsoft_NET_ILLink_Tasks'], true))
+ extraStepsTemplate: /eng/pipelines/libraries/execute-trimming-tests-steps.yml
+ extraStepsParameters:
+ extraTestArgs: '/p:WasmBuildNative=false'
- template: /eng/pipelines/common/variables.yml
extends:
- template: /eng/pipelines/common/templates/single-stage-pipeline-with-resources.yml
+ template: /eng/pipelines/common/templates/pipeline-with-resources.yml
parameters:
- jobs:
- - template: /eng/pipelines/extra-platforms/runtime-extra-platforms-linuxbionic.yml
- parameters:
- isExtraPlatformsBuild: ${{ variables.isExtraPlatformsBuild }}
- isLinuxBionicOnlyBuild: ${{ variables.isLinuxBionicOnlyBuild }}
- isRollingBuild: ${{ variables.isRollingBuild }}
+ stages:
+ - stage: Build
+ jobs:
+ - template: /eng/pipelines/extra-platforms/runtime-extra-platforms-linuxbionic.yml
+ parameters:
+ isExtraPlatformsBuild: ${{ variables.isExtraPlatformsBuild }}
+ isLinuxBionicOnlyBuild: ${{ variables.isLinuxBionicOnlyBuild }}
+ isRollingBuild: ${{ variables.isRollingBuild }}
- template: /eng/pipelines/common/variables.yml
extends:
- template: /eng/pipelines/common/templates/single-stage-pipeline-with-resources.yml
+ template: /eng/pipelines/common/templates/pipeline-with-resources.yml
parameters:
- jobs:
+ stages:
+ - stage: Build
+ jobs:
- #
- # Evaluate paths
- #
- - ${{ if eq(variables.dependOnEvaluatePaths, true) }}:
- - template: /eng/pipelines/common/evaluate-default-paths.yml
+ #
+ # Evaluate paths
+ #
+ - ${{ if eq(variables.dependOnEvaluatePaths, true) }}:
+ - template: /eng/pipelines/common/evaluate-default-paths.yml
- #
- # Build Mono and Installer on LLVMJIT mode
- #
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/common/global-build-job.yml
- buildConfig: Release
- runtimeFlavor: mono
- platforms:
- - OSX_x64
- jobParameters:
- testGroup: innerloop
- nameSuffix: AllSubsets_Mono_LLVMJIT
- buildArgs: -s mono+libs+host+packs -c $(_BuildConfig)
- /p:MonoEnableLLVM=true /p:MonoBundleLLVMOptimizer=false
- condition: >-
- or(
- eq(dependencies.evaluate_paths.outputs['SetPathVars_libraries.containsChange'], true),
- eq(dependencies.evaluate_paths.outputs['SetPathVars_mono_excluding_wasm.containsChange'], true),
- eq(dependencies.evaluate_paths.outputs['SetPathVars_installer.containsChange'], true),
- eq(variables['isRollingBuild'], true))
+ #
+ # Build Mono and Installer on LLVMJIT mode
+ #
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/common/global-build-job.yml
+ buildConfig: Release
+ runtimeFlavor: mono
+ platforms:
+ - OSX_x64
+ jobParameters:
+ testGroup: innerloop
+ nameSuffix: AllSubsets_Mono_LLVMJIT
+ buildArgs: -s mono+libs+host+packs -c $(_BuildConfig)
+ /p:MonoEnableLLVM=true /p:MonoBundleLLVMOptimizer=false
+ condition: >-
+ or(
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_libraries.containsChange'], true),
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_mono_excluding_wasm.containsChange'], true),
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_installer.containsChange'], true),
+ eq(variables['isRollingBuild'], true))
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/common/global-build-job.yml
- buildConfig: ${{ variables.debugOnPrReleaseOnRolling }}
- runtimeFlavor: mono
- platforms:
- - Linux_x64
- - Linux_arm64
- jobParameters:
- testGroup: innerloop
- nameSuffix: AllSubsets_Mono_LLVMJIT
- buildArgs: -s mono+libs+host+packs -c $(_BuildConfig)
- /p:MonoEnableLLVM=true /p:MonoBundleLLVMOptimizer=false
- condition: >-
- or(
- eq(dependencies.evaluate_paths.outputs['SetPathVars_libraries.containsChange'], true),
- eq(dependencies.evaluate_paths.outputs['SetPathVars_mono_excluding_wasm.containsChange'], true),
- eq(dependencies.evaluate_paths.outputs['SetPathVars_installer.containsChange'], true),
- eq(variables['isRollingBuild'], true))
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/common/global-build-job.yml
+ buildConfig: ${{ variables.debugOnPrReleaseOnRolling }}
+ runtimeFlavor: mono
+ platforms:
+ - Linux_x64
+ - Linux_arm64
+ jobParameters:
+ testGroup: innerloop
+ nameSuffix: AllSubsets_Mono_LLVMJIT
+ buildArgs: -s mono+libs+host+packs -c $(_BuildConfig)
+ /p:MonoEnableLLVM=true /p:MonoBundleLLVMOptimizer=false
+ condition: >-
+ or(
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_libraries.containsChange'], true),
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_mono_excluding_wasm.containsChange'], true),
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_installer.containsChange'], true),
+ eq(variables['isRollingBuild'], true))
- #
- # Build Mono and Installer on LLVMAOT mode
- #
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/common/global-build-job.yml
- buildConfig: Release
- runtimeFlavor: mono
- platforms:
- - Linux_x64
- - Linux_arm64
- jobParameters:
- testGroup: innerloop
- nameSuffix: AllSubsets_Mono_LLVMAOT
- buildArgs: -s mono+libs+host+packs -c $(_BuildConfig)
- /p:MonoEnableLLVM=true /p:MonoBundleLLVMOptimizer=true
- condition: >-
- or(
- eq(dependencies.evaluate_paths.outputs['SetPathVars_libraries.containsChange'], true),
- eq(dependencies.evaluate_paths.outputs['SetPathVars_mono_excluding_wasm.containsChange'], true),
- eq(dependencies.evaluate_paths.outputs['SetPathVars_installer.containsChange'], true),
- eq(variables['isRollingBuild'], true))
+ #
+ # Build Mono and Installer on LLVMAOT mode
+ #
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/common/global-build-job.yml
+ buildConfig: Release
+ runtimeFlavor: mono
+ platforms:
+ - Linux_x64
+ - Linux_arm64
+ jobParameters:
+ testGroup: innerloop
+ nameSuffix: AllSubsets_Mono_LLVMAOT
+ buildArgs: -s mono+libs+host+packs -c $(_BuildConfig)
+ /p:MonoEnableLLVM=true /p:MonoBundleLLVMOptimizer=true
+ condition: >-
+ or(
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_libraries.containsChange'], true),
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_mono_excluding_wasm.containsChange'], true),
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_installer.containsChange'], true),
+ eq(variables['isRollingBuild'], true))
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/common/global-build-job.yml
- buildConfig: ${{ variables.debugOnPrReleaseOnRolling }}
- runtimeFlavor: mono
- platforms:
- - OSX_x64
- jobParameters:
- testGroup: innerloop
- nameSuffix: AllSubsets_Mono_LLVMAOT
- buildArgs: -s mono+libs+host+packs -c $(_BuildConfig)
- /p:MonoEnableLLVM=true /p:MonoBundleLLVMOptimizer=true
- condition: >-
- or(
- eq(dependencies.evaluate_paths.outputs['SetPathVars_libraries.containsChange'], true),
- eq(dependencies.evaluate_paths.outputs['SetPathVars_mono_excluding_wasm.containsChange'], true),
- eq(dependencies.evaluate_paths.outputs['SetPathVars_installer.containsChange'], true),
- eq(variables['isRollingBuild'], true))
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/common/global-build-job.yml
+ buildConfig: ${{ variables.debugOnPrReleaseOnRolling }}
+ runtimeFlavor: mono
+ platforms:
+ - OSX_x64
+ jobParameters:
+ testGroup: innerloop
+ nameSuffix: AllSubsets_Mono_LLVMAOT
+ buildArgs: -s mono+libs+host+packs -c $(_BuildConfig)
+ /p:MonoEnableLLVM=true /p:MonoBundleLLVMOptimizer=true
+ condition: >-
+ or(
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_libraries.containsChange'], true),
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_mono_excluding_wasm.containsChange'], true),
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_installer.containsChange'], true),
+ eq(variables['isRollingBuild'], true))
- #
- # Build Mono release with LLVM AOT
- # Only when mono, or the runtime tests changed
- #
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/mono/templates/build-job.yml
- runtimeFlavor: mono
- buildConfig: release
- platforms:
- - Linux_x64
- - Linux_arm64
- jobParameters:
- runtimeVariant: llvmaot
- condition: >-
- or(
- eq(dependencies.evaluate_paths.outputs['SetPathVars_runtimetests.containsChange'], true),
- eq(dependencies.evaluate_paths.outputs['SetPathVars_mono_excluding_wasm.containsChange'], true),
- eq(variables['isRollingBuild'], true))
+ #
+ # Build Mono release with LLVM AOT
+ # Only when mono, or the runtime tests changed
+ #
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/mono/templates/build-job.yml
+ runtimeFlavor: mono
+ buildConfig: release
+ platforms:
+ - Linux_x64
+ - Linux_arm64
+ jobParameters:
+ runtimeVariant: llvmaot
+ condition: >-
+ or(
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_runtimetests.containsChange'], true),
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_mono_excluding_wasm.containsChange'], true),
+ eq(variables['isRollingBuild'], true))
- #
- # Mono CoreCLR runtime Test executions using live libraries and LLVM AOT
- # Only when Mono is changed
- #
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/common/templates/runtimes/run-test-job.yml
- buildConfig: release
- runtimeFlavor: mono
- platforms:
- - Linux_x64
- # Disabled pending outcome of https://github.com/dotnet/runtime/issues/60234 investigation
- #- Linux_arm64
- helixQueueGroup: pr
- helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
- jobParameters:
- testGroup: innerloop
- liveLibrariesBuildConfig: ${{ variables.debugOnPrReleaseOnRolling }}
- liveRuntimeBuildConfig: release
- runtimeVariant: llvmaot
- condition: >-
- or(
- eq(dependencies.evaluate_paths.outputs['SetPathVars_mono_excluding_wasm.containsChange'], true),
- eq(dependencies.evaluate_paths.outputs['SetPathVars_runtimetests.containsChange'], true),
- eq(variables['isRollingBuild'], true))
+ #
+ # Mono CoreCLR runtime Test executions using live libraries and LLVM AOT
+ # Only when Mono is changed
+ #
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/common/templates/runtimes/run-test-job.yml
+ buildConfig: release
+ runtimeFlavor: mono
+ platforms:
+ - Linux_x64
+ # Disabled pending outcome of https://github.com/dotnet/runtime/issues/60234 investigation
+ #- Linux_arm64
+ helixQueueGroup: pr
+ helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
+ jobParameters:
+ testGroup: innerloop
+ liveLibrariesBuildConfig: ${{ variables.debugOnPrReleaseOnRolling }}
+ liveRuntimeBuildConfig: release
+ runtimeVariant: llvmaot
+ condition: >-
+ or(
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_mono_excluding_wasm.containsChange'], true),
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_runtimetests.containsChange'], true),
+ eq(variables['isRollingBuild'], true))
- #
- # Mono CoreCLR runtime Test executions using live libraries and LLVM Full AOT
- # Only when Mono is changed
- #
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/common/templates/runtimes/run-test-job.yml
- buildConfig: release
- runtimeFlavor: mono
- platforms:
- - Linux_x64
- - Linux_arm64
- helixQueueGroup: pr
- helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
- jobParameters:
- testGroup: innerloop
- liveLibrariesBuildConfig: ${{ variables.debugOnPrReleaseOnRolling }}
- liveRuntimeBuildConfig: release
- runtimeVariant: llvmfullaot
- condition: >-
- or(
- eq(dependencies.evaluate_paths.outputs['SetPathVars_mono_excluding_wasm.containsChange'], true),
- eq(dependencies.evaluate_paths.outputs['SetPathVars_runtimetests.containsChange'], true),
- eq(variables['isRollingBuild'], true))
+ #
+ # Mono CoreCLR runtime Test executions using live libraries and LLVM Full AOT
+ # Only when Mono is changed
+ #
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/common/templates/runtimes/run-test-job.yml
+ buildConfig: release
+ runtimeFlavor: mono
+ platforms:
+ - Linux_x64
+ - Linux_arm64
+ helixQueueGroup: pr
+ helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
+ jobParameters:
+ testGroup: innerloop
+ liveLibrariesBuildConfig: ${{ variables.debugOnPrReleaseOnRolling }}
+ liveRuntimeBuildConfig: release
+ runtimeVariant: llvmfullaot
+ condition: >-
+ or(
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_mono_excluding_wasm.containsChange'], true),
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_runtimetests.containsChange'], true),
+ eq(variables['isRollingBuild'], true))
- template: /eng/pipelines/common/variables.yml
extends:
- template: /eng/pipelines/common/templates/single-stage-pipeline-with-resources.yml
+ template: /eng/pipelines/common/templates/pipeline-with-resources.yml
parameters:
- jobs:
- - template: /eng/pipelines/extra-platforms/runtime-extra-platforms-maccatalyst.yml
- parameters:
- isExtraPlatformsBuild: ${{ variables.isExtraPlatformsBuild }}
- isMacCatalystOnlyBuild: ${{ variables.isMacCatalystOnlyBuild }}
- isRollingBuild: ${{ variables.isRollingBuild }}
+ stages:
+ - stage: Build
+ jobs:
+ - template: /eng/pipelines/extra-platforms/runtime-extra-platforms-maccatalyst.yml
+ parameters:
+ isExtraPlatformsBuild: ${{ variables.isExtraPlatformsBuild }}
+ isMacCatalystOnlyBuild: ${{ variables.isMacCatalystOnlyBuild }}
+ isRollingBuild: ${{ variables.isRollingBuild }}
- template: /eng/pipelines/common/variables.yml
extends:
- template: /eng/pipelines/common/templates/single-stage-pipeline-with-resources.yml
+ template: /eng/pipelines/common/templates/pipeline-with-resources.yml
parameters:
- jobs:
+ stages:
+ - stage: Build
+ jobs:
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/common/global-build-job.yml
- buildConfig: debug
- platforms:
- - windows_x64
- jobParameters:
- enableRichCodeNavigation: true
- richCodeNavigationEnvironment: "production"
- richCodeNavigationLanguage: "csharp"
- timeoutInMinutes: 240
- buildArgs: -s libs.sfx+libs.oob -allConfigurations
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/common/global-build-job.yml
+ buildConfig: debug
+ platforms:
+ - windows_x64
+ jobParameters:
+ enableRichCodeNavigation: true
+ richCodeNavigationEnvironment: "production"
+ richCodeNavigationLanguage: "csharp"
+ timeoutInMinutes: 240
+ buildArgs: -s libs.sfx+libs.oob -allConfigurations
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/common/global-build-job.yml
- buildConfig: debug
- platforms:
- - windows_x64
- jobParameters:
- enableRichCodeNavigation: true
- nameSuffix: Mono
- richCodeNavigationEnvironment: "production"
- richCodeNavigationLanguage: "csharp,cpp"
- buildArgs: -s mono -c debug
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/common/global-build-job.yml
+ buildConfig: debug
+ platforms:
+ - windows_x64
+ jobParameters:
+ enableRichCodeNavigation: true
+ nameSuffix: Mono
+ richCodeNavigationEnvironment: "production"
+ richCodeNavigationLanguage: "csharp,cpp"
+ buildArgs: -s mono -c debug
- template: /eng/pipelines/common/variables.yml
extends:
- template: /eng/pipelines/common/templates/single-stage-pipeline-with-resources.yml
+ template: /eng/pipelines/common/templates/pipeline-with-resources.yml
parameters:
- jobs:
+ stages:
+ - stage: Build
+ jobs:
- #
- # Evaluate paths
- #
- - ${{ if eq(variables.dependOnEvaluatePaths, true) }}:
- - template: /eng/pipelines/common/evaluate-default-paths.yml
+ #
+ # Evaluate paths
+ #
+ - ${{ if eq(variables.dependOnEvaluatePaths, true) }}:
+ - template: /eng/pipelines/common/evaluate-default-paths.yml
- #
- # Build the whole product using Mono and run runtime tests with the JIT.
- #
- - 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: mono
- platforms:
- - iOSSimulator_x64
- variables:
- - ${{ if and(eq(variables['System.TeamProject'], 'public'), eq(variables['Build.Reason'], 'PullRequest')) }}:
- - name: _HelixSource
- value: pr/dotnet/runtime/$(Build.SourceBranch)
- - ${{ if and(eq(variables['System.TeamProject'], 'public'), ne(variables['Build.Reason'], 'PullRequest')) }}:
- - name: _HelixSource
- value: ci/dotnet/runtime/$(Build.SourceBranch)
- - name: timeoutPerTestInMinutes
- value: 60
- - name: timeoutPerTestCollectionInMinutes
- value: 180
- jobParameters:
- testGroup: innerloop
- nameSuffix: AllSubsets_Mono_RuntimeTests
- buildArgs: -s mono+libs -c $(_BuildConfig)
- timeoutInMinutes: 240
- condition: >-
- or(
- eq(dependencies.evaluate_paths.outputs['SetPathVars_runtimetests.containsChange'], true),
- eq(dependencies.evaluate_paths.outputs['SetPathVars_mono_excluding_wasm.containsChange'], true),
- eq(variables['isRollingBuild'], true))
- ${{ if eq(variables['isRollingBuild'], true) }}:
- # extra steps, run tests
- extraStepsTemplate: /eng/pipelines/common/templates/runtimes/android-runtime-and-send-to-helix.yml
- extraStepsParameters:
- creator: dotnet-bot
- testRunNamePrefixSuffix: Mono_$(_BuildConfig)
+ #
+ # Build the whole product using Mono and run runtime tests with the JIT.
+ #
+ - 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: mono
+ platforms:
+ - iOSSimulator_x64
+ variables:
+ - ${{ if and(eq(variables['System.TeamProject'], 'public'), eq(variables['Build.Reason'], 'PullRequest')) }}:
+ - name: _HelixSource
+ value: pr/dotnet/runtime/$(Build.SourceBranch)
+ - ${{ if and(eq(variables['System.TeamProject'], 'public'), ne(variables['Build.Reason'], 'PullRequest')) }}:
+ - name: _HelixSource
+ value: ci/dotnet/runtime/$(Build.SourceBranch)
+ - name: timeoutPerTestInMinutes
+ value: 60
+ - name: timeoutPerTestCollectionInMinutes
+ value: 180
+ jobParameters:
+ testGroup: innerloop
+ nameSuffix: AllSubsets_Mono_RuntimeTests
+ buildArgs: -s mono+libs -c $(_BuildConfig)
+ timeoutInMinutes: 240
+ condition: >-
+ or(
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_runtimetests.containsChange'], true),
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_mono_excluding_wasm.containsChange'], true),
+ eq(variables['isRollingBuild'], true))
+ ${{ if eq(variables['isRollingBuild'], true) }}:
+ # extra steps, run tests
+ extraStepsTemplate: /eng/pipelines/common/templates/runtimes/android-runtime-and-send-to-helix.yml
+ extraStepsParameters:
+ creator: dotnet-bot
+ testRunNamePrefixSuffix: Mono_$(_BuildConfig)
- template: /eng/pipelines/common/variables.yml
extends:
- template: /eng/pipelines/common/templates/single-stage-pipeline-with-resources.yml
+ template: /eng/pipelines/common/templates/pipeline-with-resources.yml
parameters:
- jobs:
+ stages:
+ - stage: Build
+ jobs:
- #
- # Evaluate paths
- #
- - template: /eng/pipelines/common/evaluate-default-paths.yml
+ #
+ # Evaluate paths
+ #
+ - template: /eng/pipelines/common/evaluate-default-paths.yml
- - template: /eng/pipelines/extra-platforms/runtime-extra-platforms-wasm.yml
- parameters:
- isExtraPlatformsBuild: ${{ variables.isExtraPlatformsBuild }}
- isWasmOnlyBuild: ${{ variables.isWasmOnlyBuild }}
- isRollingBuild: ${{ variables.isRollingBuild }}
- excludeNonLibTests: true
- excludeLibTests: false
+ - template: /eng/pipelines/extra-platforms/runtime-extra-platforms-wasm.yml
+ parameters:
+ isExtraPlatformsBuild: ${{ variables.isExtraPlatformsBuild }}
+ isWasmOnlyBuild: ${{ variables.isWasmOnlyBuild }}
+ isRollingBuild: ${{ variables.isRollingBuild }}
+ excludeNonLibTests: true
+ excludeLibTests: false
- template: /eng/pipelines/common/variables.yml
extends:
- template: /eng/pipelines/common/templates/single-stage-pipeline-with-resources.yml
+ template: /eng/pipelines/common/templates/pipeline-with-resources.yml
parameters:
- jobs:
+ stages:
+ - stage: Build
+ jobs:
- #
- # Evaluate paths
- #
- - template: /eng/pipelines/common/evaluate-default-paths.yml
+ #
+ # Evaluate paths
+ #
+ - template: /eng/pipelines/common/evaluate-default-paths.yml
- - template: /eng/pipelines/extra-platforms/runtime-extra-platforms-wasm.yml
- parameters:
- isExtraPlatformsBuild: ${{ variables.isExtraPlatformsBuild }}
- isWasmOnlyBuild: ${{ variables.isWasmOnlyBuild }}
- isRollingBuild: ${{ variables.isRollingBuild }}
- excludeNonLibTests: false
- excludeLibTests: true
+ - template: /eng/pipelines/extra-platforms/runtime-extra-platforms-wasm.yml
+ parameters:
+ isExtraPlatformsBuild: ${{ variables.isExtraPlatformsBuild }}
+ isWasmOnlyBuild: ${{ variables.isWasmOnlyBuild }}
+ isRollingBuild: ${{ variables.isRollingBuild }}
+ excludeNonLibTests: false
+ excludeLibTests: true
- template: /eng/pipelines/common/variables.yml
extends:
- template: /eng/pipelines/common/templates/single-stage-pipeline-with-resources.yml
+ template: /eng/pipelines/common/templates/pipeline-with-resources.yml
parameters:
- jobs:
+ stages:
+ - stage: Build
+ jobs:
- #
- # Evaluate paths
- #
- #- ${{ if eq(variables.dependOnEvaluatePaths, true) }}:
- #- template: /eng/pipelines/common/evaluate-default-paths.yml
+ #
+ # Evaluate paths
+ #
+ #- ${{ if eq(variables.dependOnEvaluatePaths, true) }}:
+ #- template: /eng/pipelines/common/evaluate-default-paths.yml
- - template: /eng/pipelines/coreclr/perf-wasm-jobs.yml
- parameters:
- runProfile: 'v8'
- collectHelixLogsScript: ${{ variables._wasmCollectHelixLogsScript }}
- onlySanityCheck: true
- #perfForkToUse:
- #url: https://github.com/radical/performance
- #branch: fix-build
- #downloadSpecificBuild:
- #buildId: '1878694'
- #pipeline: 'perf-wasm'
- #branchName: 'refs/pull/72119/head'
+ - template: /eng/pipelines/coreclr/perf-wasm-jobs.yml
+ parameters:
+ runProfile: 'v8'
+ collectHelixLogsScript: ${{ variables._wasmCollectHelixLogsScript }}
+ onlySanityCheck: true
+ #perfForkToUse:
+ #url: https://github.com/radical/performance
+ #branch: fix-build
+ #downloadSpecificBuild:
+ #buildId: '1878694'
+ #pipeline: 'perf-wasm'
+ #branchName: 'refs/pull/72119/head'
- template: /eng/pipelines/common/variables.yml
extends:
- template: /eng/pipelines/common/templates/single-stage-pipeline-with-resources.yml
+ template: /eng/pipelines/common/templates/pipeline-with-resources.yml
parameters:
- jobs:
+ stages:
+ - stage: Build
+ jobs:
- #
- # Evaluate paths
- #
- - template: /eng/pipelines/common/evaluate-default-paths.yml
+ #
+ # Evaluate paths
+ #
+ - template: /eng/pipelines/common/evaluate-default-paths.yml
- - template: /eng/pipelines/extra-platforms/runtime-extra-platforms-wasm.yml
- parameters:
- isExtraPlatformsBuild: ${{ variables.isExtraPlatformsBuild }}
- isWasmOnlyBuild: ${{ variables.isWasmOnlyBuild }}
- isRollingBuild: ${{ variables.isRollingBuild }}
+ - template: /eng/pipelines/extra-platforms/runtime-extra-platforms-wasm.yml
+ parameters:
+ isExtraPlatformsBuild: ${{ variables.isExtraPlatformsBuild }}
+ isWasmOnlyBuild: ${{ variables.isWasmOnlyBuild }}
+ isRollingBuild: ${{ variables.isRollingBuild }}
- template: /eng/pipelines/common/variables.yml
extends:
- template: /eng/pipelines/common/templates/single-stage-pipeline-with-resources.yml
+ template: /eng/pipelines/common/templates/pipeline-with-resources.yml
parameters:
- jobs:
- #
- # Evaluate paths
- #
- - ${{ if eq(variables.dependOnEvaluatePaths, true) }}:
- - template: /eng/pipelines/common/evaluate-default-paths.yml
-
- #
- # Build CoreCLR checked
- # Only when CoreCLR is changed
- #
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/coreclr/templates/build-job.yml
- buildConfig: checked
- platforms:
- - Linux_x86
- - Linux_x64
- - Linux_arm
- - Linux_arm64
- - Linux_musl_arm
- - Linux_musl_arm64
- - Linux_musl_x64
- - OSX_arm64
- - Tizen_armel
- - windows_x86
- - windows_x64
- - windows_arm
- - windows_arm64
- jobParameters:
- testGroup: innerloop
- condition: >-
- or(
- eq(dependencies.evaluate_paths.outputs['SetPathVars_coreclr.containsChange'], true),
- eq(dependencies.evaluate_paths.outputs['SetPathVars_runtimetests.containsChange'], true),
- eq(variables['isRollingBuild'], true))
-
- #
- # Build the whole product using GNU compiler toolchain
- # When CoreCLR, Mono, Libraries, Installer and src/tests are changed
- #
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/coreclr/templates/build-job.yml
- buildConfig: checked
- platforms:
- - Linux_x64
- container: debian-11-gcc12-amd64-20220511124845-b7a6185
- jobParameters:
- testGroup: innerloop
- compilerName: gcc
- condition: >-
- or(
- eq(dependencies.evaluate_paths.outputs['SetPathVars_coreclr.containsChange'], true),
- eq(dependencies.evaluate_paths.outputs['SetPathVars_mono_excluding_wasm.containsChange'], true),
- eq(dependencies.evaluate_paths.outputs['SetPathVars_libraries.containsChange'], true),
- eq(dependencies.evaluate_paths.outputs['SetPathVars_installer.containsChange'], true),
- eq(dependencies.evaluate_paths.outputs['SetPathVars_runtimetests.containsChange'], true),
- eq(variables['isRollingBuild'], true))
-
- #
- # Build CoreCLR OSX_x64 checked
- # Only when CoreCLR or Libraries is changed
- #
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/coreclr/templates/build-job.yml
- buildConfig: checked
- platforms:
- - OSX_x64
- jobParameters:
- testGroup: innerloop
- condition: >-
- or(
- eq(dependencies.evaluate_paths.outputs['SetPathVars_coreclr.containsChange'], true),
- eq(dependencies.evaluate_paths.outputs['SetPathVars_libraries.containsChange'], true),
- eq(dependencies.evaluate_paths.outputs['SetPathVars_runtimetests.containsChange'], true),
- eq(variables['isRollingBuild'], true))
-
- #
- # Build CoreCLR release
- # Always as they are needed by Installer and we always build and test the Installer.
- #
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/coreclr/templates/build-job.yml
- buildConfig: release
- platforms:
- - OSX_arm64
- - OSX_x64
- - Linux_x64
- - Linux_arm
- - Linux_arm64
- - Linux_musl_x64
- - Linux_musl_arm
- - Linux_musl_arm64
- - windows_x64
- - windows_x86
- - windows_arm
- - windows_arm64
- - FreeBSD_x64
- jobParameters:
- testGroup: innerloop
- # Mono/runtimetests also need this, but skip for wasm
- condition:
- or(
- eq(dependencies.evaluate_paths.outputs['SetPathVars_non_mono_and_wasm.containsChange'], true),
- eq(dependencies.evaluate_paths.outputs['SetPathVars_mono_excluding_wasm.containsChange'], true),
- eq(dependencies.evaluate_paths.outputs['SetPathVars_runtimetests.containsChange'], true),
- eq(variables['isRollingBuild'], true))
-
- #
- # Build CoreCLR Formatting Job
- # Only when CoreCLR is changed, and only in the 'main' branch (no release branches;
- # both Rolling and PR builds).
- #
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/coreclr/templates/format-job.yml
- platforms:
- - Linux_x64
- - windows_x64
- jobParameters:
- condition: >-
- and(
+ stages:
+ - stage: Build
+ jobs:
+ #
+ # Evaluate paths
+ #
+ - ${{ if eq(variables.dependOnEvaluatePaths, true) }}:
+ - template: /eng/pipelines/common/evaluate-default-paths.yml
+
+ #
+ # Build CoreCLR checked
+ # Only when CoreCLR is changed
+ #
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/coreclr/templates/build-job.yml
+ buildConfig: checked
+ platforms:
+ - Linux_x86
+ - Linux_x64
+ - Linux_arm
+ - Linux_arm64
+ - Linux_musl_arm
+ - Linux_musl_arm64
+ - Linux_musl_x64
+ - OSX_arm64
+ - Tizen_armel
+ - windows_x86
+ - windows_x64
+ - windows_arm
+ - windows_arm64
+ jobParameters:
+ testGroup: innerloop
+ condition: >-
or(
- eq(variables['Build.SourceBranchName'], 'main'),
- eq(variables['System.PullRequest.TargetBranch'], 'main')),
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_coreclr.containsChange'], true),
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_runtimetests.containsChange'], true),
+ eq(variables['isRollingBuild'], true))
+
+ #
+ # Build the whole product using GNU compiler toolchain
+ # When CoreCLR, Mono, Libraries, Installer and src/tests are changed
+ #
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/coreclr/templates/build-job.yml
+ buildConfig: checked
+ platforms:
+ - Linux_x64
+ container: debian-11-gcc12-amd64-20220511124845-b7a6185
+ jobParameters:
+ testGroup: innerloop
+ compilerName: gcc
+ condition: >-
or(
- eq(dependencies.evaluate_paths.outputs['SetPathVars_coreclr_jit.containsChange'], true),
- eq(variables['isRollingBuild'], true)))
-
- #
- # CoreCLR NativeAOT debug 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: debug
- platforms:
- - Linux_x64
- - windows_x64
- jobParameters:
- testGroup: innerloop
- timeoutInMinutes: 120
- nameSuffix: NativeAOT
- buildArgs: -s clr.aot+libs -rc $(_BuildConfig) -lc 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 checked 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: checked
- platforms:
- - windows_x64
- jobParameters:
- testGroup: innerloop
- timeoutInMinutes: 120
- nameSuffix: NativeAOT
- buildArgs: -s clr.aot+libs -rc $(_BuildConfig) -lc 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
- # 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+libs -rc $(_BuildConfig) -lc 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 libraries tests
- # Only when CoreCLR or library is changed
- #
- - 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
- platforms:
- - windows_arm64
- - Linux_arm64
- - OSX_arm64
- jobParameters:
- testGroup: innerloop
- isSingleFile: true
- nameSuffix: NativeAOT
- buildArgs: -s clr.aot+libs+libs.tests -c $(_BuildConfig) /p:TestNativeAot=true /p:RunSmokeTestsOnly=true /p:ArchiveTests=true
- timeoutInMinutes: 240 # Doesn't actually take long, but we've seen the ARM64 Helix queue often get backlogged for 2+ hours
- # extra steps, run tests
- extraStepsTemplate: /eng/pipelines/libraries/helix.yml
- extraStepsParameters:
- creator: dotnet-bot
- testRunNamePrefixSuffix: NativeAOT_$(_BuildConfig)
- condition: >-
- or(
- eq(dependencies.evaluate_paths.outputs['SetPathVars_libraries.containsChange'], true),
- eq(dependencies.evaluate_paths.outputs['SetPathVars_coreclr.containsChange'], true),
- eq(variables['isFullMatrix'], true))
-
- # Build and test clr tools
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/coreclr/templates/build-job.yml
- buildConfig: checked
- platforms:
- - Linux_x64
- jobParameters:
- testGroup: clrTools
- timeoutInMinutes: 120
- condition: >-
- or(
- eq(dependencies.evaluate_paths.outputs['SetPathVars_coreclr.containsChange'], true),
- eq(variables['isRollingBuild'], true))
-
- # Build Mono AOT offset headers once, for consumption elsewhere
- # Only when mono changed
- #
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/mono/templates/generate-offsets.yml
- buildConfig: release
- platforms:
- - Android_x64
- #- Browser_wasm - unused
- - tvOS_arm64
- - iOS_arm64
- - MacCatalyst_x64
- jobParameters:
- isOfficialBuild: ${{ variables.isOfficialBuild }}
- # needed by crossaot
- condition: >-
- or(
- eq(dependencies.evaluate_paths.outputs['SetPathVars_mono_excluding_wasm.containsChange'], true),
- eq(dependencies.evaluate_paths.outputs['SetPathVars_installer.containsChange'], true),
- eq(variables['isRollingBuild'], true))
-
- # Build the whole product using Mono runtime
- # Only when libraries, mono or installer are changed
- #
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/common/global-build-job.yml
- buildConfig: ${{ variables.debugOnPrReleaseOnRolling }}
- runtimeFlavor: mono
- platforms:
- - tvOSSimulator_x64
- - iOSSimulator_x86
- - Linux_arm
- jobParameters:
- testGroup: innerloop
- nameSuffix: AllSubsets_Mono
- buildArgs: -s mono+libs+host+packs -c $(_BuildConfig)
- condition: >-
- or(
- eq(dependencies.evaluate_paths.outputs['SetPathVars_libraries.containsChange'], true),
- eq(dependencies.evaluate_paths.outputs['SetPathVars_mono_excluding_wasm.containsChange'], true),
- eq(dependencies.evaluate_paths.outputs['SetPathVars_installer.containsChange'], true),
- eq(variables['isRollingBuild'], true))
-
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/common/global-build-job.yml
- buildConfig: Release
- runtimeFlavor: mono
- platforms:
- - iOS_arm
- - Linux_musl_x64
- jobParameters:
- testGroup: innerloop
- nameSuffix: AllSubsets_Mono
- buildArgs: -s mono+libs+host+packs -c $(_BuildConfig)
- condition: >-
- or(
- eq(dependencies.evaluate_paths.outputs['SetPathVars_libraries.containsChange'], true),
- eq(dependencies.evaluate_paths.outputs['SetPathVars_mono_excluding_wasm.containsChange'], true),
- eq(dependencies.evaluate_paths.outputs['SetPathVars_installer.containsChange'], true),
- eq(variables['isRollingBuild'], true))
-
- #
- # WebAssembly legs
- #
- - template: /eng/pipelines/common/templates/wasm-library-tests.yml
- parameters:
- platforms:
- - Browser_wasm
- buildAndRunWasi: true
- alwaysRun: ${{ variables.isRollingBuild }}
- scenarios:
- - normal
- - WasmTestOnBrowser
-
- - template: /eng/pipelines/common/templates/wasm-library-tests.yml
- parameters:
- platforms:
- - Browser_wasm_win
- alwaysRun: ${{ variables.isRollingBuild }}
- scenarios:
- - WasmTestOnBrowser
-
- # EAT Library tests - only run on linux
- - template: /eng/pipelines/common/templates/wasm-library-aot-tests.yml
- parameters:
- platforms:
- - Browser_wasm
- nameSuffix: _EAT
- runAOT: false
- shouldRunSmokeOnly: false
- alwaysRun: ${{ variables.isRollingBuild }}
-
- # AOT Library tests
- - template: /eng/pipelines/common/templates/wasm-library-aot-tests.yml
- parameters:
- platforms:
- - Browser_wasm
- nameSuffix: _AOT
- runAOT: true
- shouldRunSmokeOnly: true
- alwaysRun: ${{ variables.isRollingBuild }}
-
- - template: /eng/pipelines/common/templates/wasm-library-aot-tests.yml
- parameters:
- platforms:
- - Browser_wasm_win
- nameSuffix: _AOT
- runAOT: true
- shouldRunSmokeOnly: true
- alwaysRun: ${{ variables.isRollingBuild }}
-
- # Wasm.Build.Tests
- - template: /eng/pipelines/common/templates/wasm-build-tests.yml
- parameters:
- platforms:
- - Browser_wasm
- - Browser_wasm_win
- alwaysRun: ${{ variables.isRollingBuild }}
-
- # Wasm Debugger tests
- - template: /eng/pipelines/common/templates/wasm-debugger-tests.yml
- parameters:
- platforms:
- - Browser_wasm
- - Browser_wasm_win
- alwaysRun: ${{ variables.isRollingBuild }}
-
- # Wasm runtime tests
- - template: /eng/pipelines/common/templates/wasm-runtime-tests.yml
- parameters:
- platforms:
- - Browser_wasm
- alwaysRun: ${{ variables.isRollingBuild }}
-
- # BUILD ONLY - Wasm Threading Legs
- - template: /eng/pipelines/common/templates/wasm-build-only.yml
- parameters:
- platforms:
- - Browser_wasm
- nameSuffix: _Threading
- extraBuildArgs: /p:WasmEnableThreads=true
- alwaysRun: ${{ variables.isRollingBuild }}
-
- - template: /eng/pipelines/common/templates/wasm-build-only.yml
- parameters:
- platforms:
- - Browser_wasm
- nameSuffix: _Threading_PerfTracing
- extraBuildArgs: /p:WasmEnablePerfTracing=true
- alwaysRun: ${{ variables.isRollingBuild }}
-
- #
- # iOS/tvOS devices - Full AOT + AggressiveTrimming to reduce size
- # Build the whole product using Mono and run libraries 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
- platforms:
- - iOS_arm64
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_coreclr.containsChange'], true),
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_mono_excluding_wasm.containsChange'], true),
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_libraries.containsChange'], true),
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_installer.containsChange'], true),
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_runtimetests.containsChange'], true),
+ eq(variables['isRollingBuild'], true))
+
+ #
+ # Build CoreCLR OSX_x64 checked
+ # Only when CoreCLR or Libraries is changed
+ #
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/coreclr/templates/build-job.yml
+ buildConfig: checked
+ platforms:
+ - OSX_x64
+ jobParameters:
+ testGroup: innerloop
+ condition: >-
+ or(
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_coreclr.containsChange'], true),
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_libraries.containsChange'], true),
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_runtimetests.containsChange'], true),
+ eq(variables['isRollingBuild'], true))
+
+ #
+ # Build CoreCLR release
+ # Always as they are needed by Installer and we always build and test the Installer.
+ #
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/coreclr/templates/build-job.yml
+ buildConfig: release
+ platforms:
+ - OSX_arm64
+ - OSX_x64
+ - Linux_x64
+ - Linux_arm
+ - Linux_arm64
+ - Linux_musl_x64
+ - Linux_musl_arm
+ - Linux_musl_arm64
+ - windows_x64
+ - windows_x86
+ - windows_arm
+ - windows_arm64
+ - FreeBSD_x64
+ jobParameters:
+ testGroup: innerloop
+ # Mono/runtimetests also need this, but skip for wasm
+ condition:
+ or(
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_non_mono_and_wasm.containsChange'], true),
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_mono_excluding_wasm.containsChange'], true),
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_runtimetests.containsChange'], true),
+ eq(variables['isRollingBuild'], true))
+
+ #
+ # Build CoreCLR Formatting Job
+ # Only when CoreCLR is changed, and only in the 'main' branch (no release branches;
+ # both Rolling and PR builds).
+ #
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/coreclr/templates/format-job.yml
+ platforms:
+ - Linux_x64
+ - windows_x64
+ jobParameters:
+ condition: >-
+ and(
+ or(
+ eq(variables['Build.SourceBranchName'], 'main'),
+ eq(variables['System.PullRequest.TargetBranch'], 'main')),
+ or(
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_coreclr_jit.containsChange'], true),
+ eq(variables['isRollingBuild'], true)))
+
+ #
+ # CoreCLR NativeAOT debug 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: debug
+ platforms:
+ - Linux_x64
+ - windows_x64
+ jobParameters:
+ testGroup: innerloop
+ timeoutInMinutes: 120
+ nameSuffix: NativeAOT
+ buildArgs: -s clr.aot+libs -rc $(_BuildConfig) -lc 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 checked 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: checked
+ platforms:
+ - windows_x64
+ jobParameters:
+ testGroup: innerloop
+ timeoutInMinutes: 120
+ nameSuffix: NativeAOT
+ buildArgs: -s clr.aot+libs -rc $(_BuildConfig) -lc 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
+ # 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+libs -rc $(_BuildConfig) -lc 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 libraries tests
+ # Only when CoreCLR or library is changed
+ #
+ - 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
+ platforms:
+ - windows_arm64
+ - Linux_arm64
+ - OSX_arm64
+ jobParameters:
+ testGroup: innerloop
+ isSingleFile: true
+ nameSuffix: NativeAOT
+ buildArgs: -s clr.aot+libs+libs.tests -c $(_BuildConfig) /p:TestNativeAot=true /p:RunSmokeTestsOnly=true /p:ArchiveTests=true
+ timeoutInMinutes: 240 # Doesn't actually take long, but we've seen the ARM64 Helix queue often get backlogged for 2+ hours
+ # extra steps, run tests
+ extraStepsTemplate: /eng/pipelines/libraries/helix.yml
+ extraStepsParameters:
+ creator: dotnet-bot
+ testRunNamePrefixSuffix: NativeAOT_$(_BuildConfig)
+ condition: >-
+ or(
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_libraries.containsChange'], true),
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_coreclr.containsChange'], true),
+ eq(variables['isFullMatrix'], true))
+
+ # Build and test clr tools
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/coreclr/templates/build-job.yml
+ buildConfig: checked
+ platforms:
+ - Linux_x64
+ jobParameters:
+ testGroup: clrTools
+ timeoutInMinutes: 120
+ condition: >-
+ or(
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_coreclr.containsChange'], true),
+ eq(variables['isRollingBuild'], true))
+
+ # Build Mono AOT offset headers once, for consumption elsewhere
+ # Only when mono changed
+ #
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/mono/templates/generate-offsets.yml
+ buildConfig: release
+ platforms:
+ - Android_x64
+ #- Browser_wasm - unused
- tvOS_arm64
- variables:
- # map dependencies variables to local variables
- - name: librariesContainsChange
- value: $[ dependencies.evaluate_paths.outputs['SetPathVars_libraries.containsChange'] ]
- - name: monoContainsChange
- value: $[ dependencies.evaluate_paths.outputs['SetPathVars_mono_excluding_wasm.containsChange'] ]
- jobParameters:
- testGroup: innerloop
- nameSuffix: AllSubsets_Mono
- 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=true /p:BuildDarwinFrameworks=true
- timeoutInMinutes: 180
- condition: >-
- or(
- eq(dependencies.evaluate_paths.outputs['SetPathVars_libraries.containsChange'], true),
- eq(dependencies.evaluate_paths.outputs['SetPathVars_mono_excluding_wasm.containsChange'], true),
- eq(dependencies.evaluate_paths.outputs['SetPathVars_installer.containsChange'], true),
- eq(variables['isRollingBuild'], true))
- # extra steps, run tests
- extraStepsTemplate: /eng/pipelines/libraries/helix.yml
- extraStepsParameters:
- creator: dotnet-bot
- testRunNamePrefixSuffix: Mono_$(_BuildConfig)
- extraHelixArguments: /p:NeedsToBuildAppsOnHelix=true
+ - iOS_arm64
+ - MacCatalyst_x64
+ jobParameters:
+ isOfficialBuild: ${{ variables.isOfficialBuild }}
+ # needed by crossaot
+ condition: >-
+ or(
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_mono_excluding_wasm.containsChange'], true),
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_installer.containsChange'], true),
+ eq(variables['isRollingBuild'], true))
+
+ # Build the whole product using Mono runtime
+ # Only when libraries, mono or installer are changed
+ #
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/common/global-build-job.yml
+ buildConfig: ${{ variables.debugOnPrReleaseOnRolling }}
+ runtimeFlavor: mono
+ platforms:
+ - tvOSSimulator_x64
+ - iOSSimulator_x86
+ - Linux_arm
+ jobParameters:
+ testGroup: innerloop
+ nameSuffix: AllSubsets_Mono
+ buildArgs: -s mono+libs+host+packs -c $(_BuildConfig)
+ condition: >-
+ or(
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_libraries.containsChange'], true),
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_mono_excluding_wasm.containsChange'], true),
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_installer.containsChange'], true),
+ eq(variables['isRollingBuild'], true))
+
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/common/global-build-job.yml
+ buildConfig: Release
+ runtimeFlavor: mono
+ platforms:
+ - iOS_arm
+ - Linux_musl_x64
+ jobParameters:
+ testGroup: innerloop
+ nameSuffix: AllSubsets_Mono
+ buildArgs: -s mono+libs+host+packs -c $(_BuildConfig)
condition: >-
or(
- eq(variables['librariesContainsChange'], true),
- eq(variables['monoContainsChange'], true),
- eq(variables['isRollingBuild'], true))
-
- #
- # MacCatalyst interp - requires AOT Compilation and Interp flags
- # Build the whole product using Mono and run libraries 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
- platforms:
- - MacCatalyst_x64
- - ${{ if eq(variables['isRollingBuild'], true) }}:
- - MacCatalyst_arm64
- variables:
- # map dependencies variables to local variables
- - name: librariesContainsChange
- value: $[ dependencies.evaluate_paths.outputs['SetPathVars_libraries.containsChange'] ]
- - name: monoContainsChange
- value: $[ dependencies.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 /p:RunSmokeTestsOnly=true /p:DevTeamProvisioning=adhoc /p:RunAOTCompilation=true /p:MonoForceInterpreter=true /p:BuildDarwinFrameworks=true
- timeoutInMinutes: 180
- condition: >-
- or(
- eq(dependencies.evaluate_paths.outputs['SetPathVars_libraries.containsChange'], true),
- eq(dependencies.evaluate_paths.outputs['SetPathVars_mono_excluding_wasm.containsChange'], true),
- eq(dependencies.evaluate_paths.outputs['SetPathVars_installer.containsChange'], true),
- eq(variables['isRollingBuild'], true))
- # extra steps, run tests
- extraStepsTemplate: /eng/pipelines/libraries/helix.yml
- extraStepsParameters:
- creator: dotnet-bot
- testRunNamePrefixSuffix: Mono_$(_BuildConfig)
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_libraries.containsChange'], true),
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_mono_excluding_wasm.containsChange'], true),
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_installer.containsChange'], true),
+ eq(variables['isRollingBuild'], true))
+
+ #
+ # WebAssembly legs
+ #
+ - template: /eng/pipelines/common/templates/wasm-library-tests.yml
+ parameters:
+ platforms:
+ - Browser_wasm
+ buildAndRunWasi: true
+ alwaysRun: ${{ variables.isRollingBuild }}
+ scenarios:
+ - normal
+ - WasmTestOnBrowser
+
+ - template: /eng/pipelines/common/templates/wasm-library-tests.yml
+ parameters:
+ platforms:
+ - Browser_wasm_win
+ alwaysRun: ${{ variables.isRollingBuild }}
+ scenarios:
+ - WasmTestOnBrowser
+
+ # EAT Library tests - only run on linux
+ - template: /eng/pipelines/common/templates/wasm-library-aot-tests.yml
+ parameters:
+ platforms:
+ - Browser_wasm
+ nameSuffix: _EAT
+ runAOT: false
+ shouldRunSmokeOnly: false
+ alwaysRun: ${{ variables.isRollingBuild }}
+
+ # AOT Library tests
+ - template: /eng/pipelines/common/templates/wasm-library-aot-tests.yml
+ parameters:
+ platforms:
+ - Browser_wasm
+ nameSuffix: _AOT
+ runAOT: true
+ shouldRunSmokeOnly: true
+ alwaysRun: ${{ variables.isRollingBuild }}
+
+ - template: /eng/pipelines/common/templates/wasm-library-aot-tests.yml
+ parameters:
+ platforms:
+ - Browser_wasm_win
+ nameSuffix: _AOT
+ runAOT: true
+ shouldRunSmokeOnly: true
+ alwaysRun: ${{ variables.isRollingBuild }}
+
+ # Wasm.Build.Tests
+ - template: /eng/pipelines/common/templates/wasm-build-tests.yml
+ parameters:
+ platforms:
+ - Browser_wasm
+ - Browser_wasm_win
+ alwaysRun: ${{ variables.isRollingBuild }}
+
+ # Wasm Debugger tests
+ - template: /eng/pipelines/common/templates/wasm-debugger-tests.yml
+ parameters:
+ platforms:
+ - Browser_wasm
+ - Browser_wasm_win
+ alwaysRun: ${{ variables.isRollingBuild }}
+
+ # Wasm runtime tests
+ - template: /eng/pipelines/common/templates/wasm-runtime-tests.yml
+ parameters:
+ platforms:
+ - Browser_wasm
+ alwaysRun: ${{ variables.isRollingBuild }}
+
+ # BUILD ONLY - Wasm Threading Legs
+ - template: /eng/pipelines/common/templates/wasm-build-only.yml
+ parameters:
+ platforms:
+ - Browser_wasm
+ nameSuffix: _Threading
+ extraBuildArgs: /p:WasmEnableThreads=true
+ alwaysRun: ${{ variables.isRollingBuild }}
+
+ - template: /eng/pipelines/common/templates/wasm-build-only.yml
+ parameters:
+ platforms:
+ - Browser_wasm
+ nameSuffix: _Threading_PerfTracing
+ extraBuildArgs: /p:WasmEnablePerfTracing=true
+ alwaysRun: ${{ variables.isRollingBuild }}
+
+ #
+ # iOS/tvOS devices - Full AOT + AggressiveTrimming to reduce size
+ # Build the whole product using Mono and run libraries 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
+ platforms:
+ - iOS_arm64
+ - tvOS_arm64
+ variables:
+ # map dependencies variables to local variables
+ - name: librariesContainsChange
+ value: $[ dependencies.evaluate_paths.outputs['SetPathVars_libraries.containsChange'] ]
+ - name: monoContainsChange
+ value: $[ dependencies.evaluate_paths.outputs['SetPathVars_mono_excluding_wasm.containsChange'] ]
+ jobParameters:
+ testGroup: innerloop
+ nameSuffix: AllSubsets_Mono
+ 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=true /p:BuildDarwinFrameworks=true
+ timeoutInMinutes: 180
condition: >-
or(
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_libraries.containsChange'], true),
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_mono_excluding_wasm.containsChange'], true),
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_installer.containsChange'], true),
+ eq(variables['isRollingBuild'], true))
+ # extra steps, run tests
+ extraStepsTemplate: /eng/pipelines/libraries/helix.yml
+ extraStepsParameters:
+ creator: dotnet-bot
+ testRunNamePrefixSuffix: Mono_$(_BuildConfig)
+ extraHelixArguments: /p:NeedsToBuildAppsOnHelix=true
+ condition: >-
+ or(
eq(variables['librariesContainsChange'], true),
eq(variables['monoContainsChange'], true),
eq(variables['isRollingBuild'], true))
- #
- # Build Mono and Installer on LLVMJIT mode
- #
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/common/global-build-job.yml
- buildConfig: Release
- runtimeFlavor: mono
- platforms:
- - OSX_x64
- jobParameters:
- testGroup: innerloop
- nameSuffix: AllSubsets_Mono_LLVMJIT
- buildArgs: -s mono+libs+host+packs -c $(_BuildConfig)
- /p:MonoEnableLLVM=true /p:MonoBundleLLVMOptimizer=false
- condition: >-
- or(
- eq(dependencies.evaluate_paths.outputs['SetPathVars_libraries.containsChange'], true),
- eq(dependencies.evaluate_paths.outputs['SetPathVars_mono_excluding_wasm.containsChange'], true),
- eq(dependencies.evaluate_paths.outputs['SetPathVars_installer.containsChange'], true),
- eq(variables['isRollingBuild'], true))
-
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/common/global-build-job.yml
- buildConfig: ${{ variables.debugOnPrReleaseOnRolling }}
- runtimeFlavor: mono
- platforms:
- - Linux_x64
- - Linux_arm64
- jobParameters:
- testGroup: innerloop
- nameSuffix: AllSubsets_Mono_LLVMJIT
- buildArgs: -s mono+libs+host+packs -c $(_BuildConfig)
- /p:MonoEnableLLVM=true /p:MonoBundleLLVMOptimizer=false
- condition: >-
- or(
- eq(dependencies.evaluate_paths.outputs['SetPathVars_libraries.containsChange'], true),
- eq(dependencies.evaluate_paths.outputs['SetPathVars_mono_excluding_wasm.containsChange'], true),
- eq(dependencies.evaluate_paths.outputs['SetPathVars_installer.containsChange'], true),
- eq(variables['isRollingBuild'], true))
-
- #
- # Build Mono and Installer on LLVMAOT mode
- #
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/common/global-build-job.yml
- buildConfig: Release
- runtimeFlavor: mono
- platforms:
- - Linux_x64
- - Linux_arm64
- jobParameters:
- testGroup: innerloop
- nameSuffix: AllSubsets_Mono_LLVMAOT
- buildArgs: -s mono+libs+host+packs -c $(_BuildConfig)
- /p:MonoEnableLLVM=true /p:MonoBundleLLVMOptimizer=true
- condition: >-
- or(
- eq(dependencies.evaluate_paths.outputs['SetPathVars_libraries.containsChange'], true),
- eq(dependencies.evaluate_paths.outputs['SetPathVars_mono_excluding_wasm.containsChange'], true),
- eq(dependencies.evaluate_paths.outputs['SetPathVars_installer.containsChange'], true),
- eq(variables['isRollingBuild'], true))
-
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/common/global-build-job.yml
- buildConfig: ${{ variables.debugOnPrReleaseOnRolling }}
- runtimeFlavor: mono
- platforms:
- - OSX_x64
- jobParameters:
- testGroup: innerloop
- nameSuffix: AllSubsets_Mono_LLVMAOT
- buildArgs: -s mono+libs+host+packs -c $(_BuildConfig)
- /p:MonoEnableLLVM=true /p:MonoBundleLLVMOptimizer=true
- condition: >-
- or(
- eq(dependencies.evaluate_paths.outputs['SetPathVars_libraries.containsChange'], true),
- eq(dependencies.evaluate_paths.outputs['SetPathVars_mono_excluding_wasm.containsChange'], true),
- eq(dependencies.evaluate_paths.outputs['SetPathVars_installer.containsChange'], true),
- eq(variables['isRollingBuild'], true))
-
- #
- # Build Mono debug
- # Only when mono changed
- #
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/mono/templates/build-job.yml
- runtimeFlavor: mono
- buildConfig: debug
- platforms:
- - OSX_x64
- - OSX_arm64
- - Linux_x64
- - Linux_arm64
- # - Linux_musl_arm64
- - windows_x64
- - windows_x86
- # - windows_arm
- # - windows_arm64
- jobParameters:
- condition: >-
- or(
- eq(dependencies.evaluate_paths.outputs['SetPathVars_mono_excluding_wasm.containsChange'], true),
- eq(variables['isRollingBuild'], true))
-
- #
- # Build Mono release AOT cross-compilers
- # Only when mono changed
- #
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/mono/templates/build-job.yml
- runtimeFlavor: mono
- buildConfig: release
- platforms:
- - Linux_x64
- # - Linux_arm64
- # - Linux_musl_arm64
- - Windows_x64
- # - windows_x86
- # - windows_arm
- # - windows_arm64
- jobParameters:
- runtimeVariant: crossaot
- dependsOn:
- - mono_android_offsets
- #- mono_browser_offsets - unused
- monoCrossAOTTargetOS:
- - Android
- #- Browser - unused
- condition: >-
- or(
- eq(dependencies.evaluate_paths.outputs['SetPathVars_mono_excluding_wasm.containsChange'], true),
- eq(dependencies.evaluate_paths.outputs['SetPathVars_installer.containsChange'], true),
- eq(variables['isRollingBuild'], true))
-
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/mono/templates/build-job.yml
- runtimeFlavor: mono
- buildConfig: release
- platforms:
- - OSX_x64
- jobParameters:
- runtimeVariant: crossaot
- dependsOn:
- - mono_android_offsets
- #- mono_browser_offsets - unused
- - mono_tvos_offsets
- - mono_ios_offsets
- - mono_maccatalyst_offsets
- monoCrossAOTTargetOS:
- - Android
- #- Browser - unused
- - tvOS
- - iOS
- - MacCatalyst
- condition: >-
- or(
- eq(dependencies.evaluate_paths.outputs['SetPathVars_mono_excluding_wasm.containsChange'], true),
- eq(dependencies.evaluate_paths.outputs['SetPathVars_installer.containsChange'], true),
- eq(variables['isRollingBuild'], true))
-
- #
- # Build Mono release
- # Only when libraries or mono changed
- #
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/mono/templates/build-job.yml
- runtimeFlavor: mono
- buildConfig: release
- platforms:
- - Linux_x64
- # - Linux_musl_arm64
- - windows_x64
- - windows_x86
- # - windows_arm
- # - windows_arm64
- jobParameters:
- condition: >-
- or(
- eq(dependencies.evaluate_paths.outputs['SetPathVars_libraries.containsChange'], true),
- eq(dependencies.evaluate_paths.outputs['SetPathVars_mono_excluding_wasm.containsChange'], true),
- eq(variables['isRollingBuild'], true))
-
- #
- # Build Mono release
- # Only when libraries, mono, or the runtime tests changed
- # Currently only these architectures are needed for the runtime tests.
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/mono/templates/build-job.yml
- runtimeFlavor: mono
- buildConfig: release
- platforms:
- - OSX_x64
- - Linux_arm64
- jobParameters:
- condition: >-
- or(
- eq(dependencies.evaluate_paths.outputs['SetPathVars_libraries.containsChange'], true),
- eq(dependencies.evaluate_paths.outputs['SetPathVars_runtimetests.containsChange'], true),
- eq(dependencies.evaluate_paths.outputs['SetPathVars_mono_excluding_wasm.containsChange'], true),
- eq(variables['isRollingBuild'], true))
-
- #
- # Build Mono release with LLVM AOT
- # Only when mono, or the runtime tests changed
- #
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/mono/templates/build-job.yml
- runtimeFlavor: mono
- buildConfig: release
- platforms:
- - Linux_x64
- - Linux_arm64
- jobParameters:
- runtimeVariant: llvmaot
- condition: >-
- or(
- eq(dependencies.evaluate_paths.outputs['SetPathVars_runtimetests.containsChange'], true),
- eq(dependencies.evaluate_paths.outputs['SetPathVars_mono_excluding_wasm.containsChange'], true),
- eq(variables['isRollingBuild'], true))
-
- #
- # Build libraries using live CoreLib
- # These set of libraries are built always no matter what changed
- # The reason for that is because Corelib and Installer needs it and
- # These are part of the test matrix for Libraries changes.
- #
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/libraries/build-job.yml
- buildConfig: Release
- platforms:
- - Linux_arm
- - Linux_musl_arm
- - Linux_musl_arm64
- - windows_arm
- - windows_arm64
- - windows_x86
- jobParameters:
- condition:
- or(
- eq(dependencies.evaluate_paths.outputs['SetPathVars_coreclr.containsChange'], true),
- eq(dependencies.evaluate_paths.outputs['SetPathVars_libraries.containsChange'], true),
- eq(dependencies.evaluate_paths.outputs['SetPathVars_installer.containsChange'], true),
- eq(dependencies.evaluate_paths.outputs['SetPathVars_runtimetests.containsChange'], true),
- eq(dependencies.evaluate_paths.outputs['SetPathVars_mono_excluding_wasm.containsChange'], true),
- eq(variables['isRollingBuild'], true))
-
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/libraries/build-job.yml
- buildConfig: ${{ variables.debugOnPrReleaseOnRolling }}
- platforms:
- - Linux_arm64
- - Linux_musl_x64
- - Linux_x64
- - OSX_arm64
- - OSX_x64
- - windows_x64
- - FreeBSD_x64
- jobParameters:
- testScope: innerloop
- condition:
- or(
- eq(dependencies.evaluate_paths.outputs['SetPathVars_coreclr.containsChange'], true),
- eq(dependencies.evaluate_paths.outputs['SetPathVars_libraries.containsChange'], true),
- eq(dependencies.evaluate_paths.outputs['SetPathVars_installer.containsChange'], true),
- eq(dependencies.evaluate_paths.outputs['SetPathVars_runtimetests.containsChange'], true),
- eq(dependencies.evaluate_paths.outputs['SetPathVars_mono_excluding_wasm.containsChange'], true),
- eq(variables['isRollingBuild'], true))
-
- #
- # Libraries debug build that only runs when coreclr is changed
- # Only do this on PR builds since we use the Release builds for these test runs in CI
- # and those are already built above
- #
- - ${{ if eq(variables['isRollingBuild'], false) }}:
+ #
+ # MacCatalyst interp - requires AOT Compilation and Interp flags
+ # Build the whole product using Mono and run libraries tests
+ #
- template: /eng/pipelines/common/platform-matrix.yml
parameters:
- jobTemplate: /eng/pipelines/libraries/build-job.yml
- buildConfig: Debug
+ jobTemplate: /eng/pipelines/common/global-build-job.yml
+ helixQueuesTemplate: /eng/pipelines/libraries/helix-queues-setup.yml
+ buildConfig: Release
+ runtimeFlavor: mono
platforms:
- - windows_x86
+ - MacCatalyst_x64
+ - ${{ if eq(variables['isRollingBuild'], true) }}:
+ - MacCatalyst_arm64
+ variables:
+ # map dependencies variables to local variables
+ - name: librariesContainsChange
+ value: $[ dependencies.evaluate_paths.outputs['SetPathVars_libraries.containsChange'] ]
+ - name: monoContainsChange
+ value: $[ dependencies.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 /p:RunSmokeTestsOnly=true /p:DevTeamProvisioning=adhoc /p:RunAOTCompilation=true /p:MonoForceInterpreter=true /p:BuildDarwinFrameworks=true
+ timeoutInMinutes: 180
+ condition: >-
+ or(
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_libraries.containsChange'], true),
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_mono_excluding_wasm.containsChange'], true),
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_installer.containsChange'], true),
+ eq(variables['isRollingBuild'], true))
+ # extra steps, run tests
+ extraStepsTemplate: /eng/pipelines/libraries/helix.yml
+ extraStepsParameters:
+ creator: dotnet-bot
+ testRunNamePrefixSuffix: Mono_$(_BuildConfig)
+ condition: >-
+ or(
+ eq(variables['librariesContainsChange'], true),
+ eq(variables['monoContainsChange'], true),
+ eq(variables['isRollingBuild'], true))
+
+ #
+ # Build Mono and Installer on LLVMJIT mode
+ #
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/common/global-build-job.yml
+ buildConfig: Release
+ runtimeFlavor: mono
+ platforms:
+ - OSX_x64
jobParameters:
+ testGroup: innerloop
+ nameSuffix: AllSubsets_Mono_LLVMJIT
+ buildArgs: -s mono+libs+host+packs -c $(_BuildConfig)
+ /p:MonoEnableLLVM=true /p:MonoBundleLLVMOptimizer=false
condition: >-
- eq(dependencies.evaluate_paths.outputs['SetPathVars_coreclr.containsChange'], true)
+ or(
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_libraries.containsChange'], true),
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_mono_excluding_wasm.containsChange'], true),
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_installer.containsChange'], true),
+ eq(variables['isRollingBuild'], true))
- #
- # Libraries release build that only runs when coreclr is changed in PRs
- # We need these for checked coreclr + release libraries tests runs.
- #
- - ${{ if eq(variables['isRollingBuild'], false) }}:
- template: /eng/pipelines/common/platform-matrix.yml
parameters:
- jobTemplate: /eng/pipelines/libraries/build-job.yml
+ jobTemplate: /eng/pipelines/common/global-build-job.yml
+ buildConfig: ${{ variables.debugOnPrReleaseOnRolling }}
+ runtimeFlavor: mono
+ platforms:
+ - Linux_x64
+ - Linux_arm64
+ jobParameters:
+ testGroup: innerloop
+ nameSuffix: AllSubsets_Mono_LLVMJIT
+ buildArgs: -s mono+libs+host+packs -c $(_BuildConfig)
+ /p:MonoEnableLLVM=true /p:MonoBundleLLVMOptimizer=false
+ condition: >-
+ or(
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_libraries.containsChange'], true),
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_mono_excluding_wasm.containsChange'], true),
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_installer.containsChange'], true),
+ eq(variables['isRollingBuild'], true))
+
+ #
+ # Build Mono and Installer on LLVMAOT mode
+ #
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/common/global-build-job.yml
buildConfig: Release
+ runtimeFlavor: mono
+ platforms:
+ - Linux_x64
+ - Linux_arm64
+ jobParameters:
+ testGroup: innerloop
+ nameSuffix: AllSubsets_Mono_LLVMAOT
+ buildArgs: -s mono+libs+host+packs -c $(_BuildConfig)
+ /p:MonoEnableLLVM=true /p:MonoBundleLLVMOptimizer=true
+ condition: >-
+ or(
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_libraries.containsChange'], true),
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_mono_excluding_wasm.containsChange'], true),
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_installer.containsChange'], true),
+ eq(variables['isRollingBuild'], true))
+
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/common/global-build-job.yml
+ buildConfig: ${{ variables.debugOnPrReleaseOnRolling }}
+ runtimeFlavor: mono
+ platforms:
+ - OSX_x64
+ jobParameters:
+ testGroup: innerloop
+ nameSuffix: AllSubsets_Mono_LLVMAOT
+ buildArgs: -s mono+libs+host+packs -c $(_BuildConfig)
+ /p:MonoEnableLLVM=true /p:MonoBundleLLVMOptimizer=true
+ condition: >-
+ or(
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_libraries.containsChange'], true),
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_mono_excluding_wasm.containsChange'], true),
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_installer.containsChange'], true),
+ eq(variables['isRollingBuild'], true))
+
+ #
+ # Build Mono debug
+ # Only when mono changed
+ #
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/mono/templates/build-job.yml
+ runtimeFlavor: mono
+ buildConfig: debug
+ platforms:
+ - OSX_x64
+ - OSX_arm64
+ - Linux_x64
+ - Linux_arm64
+ # - Linux_musl_arm64
+ - windows_x64
+ - windows_x86
+ # - windows_arm
+ # - windows_arm64
+ jobParameters:
+ condition: >-
+ or(
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_mono_excluding_wasm.containsChange'], true),
+ eq(variables['isRollingBuild'], true))
+
+ #
+ # Build Mono release AOT cross-compilers
+ # Only when mono changed
+ #
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/mono/templates/build-job.yml
+ runtimeFlavor: mono
+ buildConfig: release
+ platforms:
+ - Linux_x64
+ # - Linux_arm64
+ # - Linux_musl_arm64
+ - Windows_x64
+ # - windows_x86
+ # - windows_arm
+ # - windows_arm64
+ jobParameters:
+ runtimeVariant: crossaot
+ dependsOn:
+ - mono_android_offsets
+ #- mono_browser_offsets - unused
+ monoCrossAOTTargetOS:
+ - Android
+ #- Browser - unused
+ condition: >-
+ or(
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_mono_excluding_wasm.containsChange'], true),
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_installer.containsChange'], true),
+ eq(variables['isRollingBuild'], true))
+
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/mono/templates/build-job.yml
+ runtimeFlavor: mono
+ buildConfig: release
+ platforms:
+ - OSX_x64
+ jobParameters:
+ runtimeVariant: crossaot
+ dependsOn:
+ - mono_android_offsets
+ #- mono_browser_offsets - unused
+ - mono_tvos_offsets
+ - mono_ios_offsets
+ - mono_maccatalyst_offsets
+ monoCrossAOTTargetOS:
+ - Android
+ #- Browser - unused
+ - tvOS
+ - iOS
+ - MacCatalyst
+ condition: >-
+ or(
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_mono_excluding_wasm.containsChange'], true),
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_installer.containsChange'], true),
+ eq(variables['isRollingBuild'], true))
+
+ #
+ # Build Mono release
+ # Only when libraries or mono changed
+ #
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/mono/templates/build-job.yml
+ runtimeFlavor: mono
+ buildConfig: release
platforms:
- Linux_x64
+ # - Linux_musl_arm64
- windows_x64
+ - windows_x86
+ # - windows_arm
+ # - windows_arm64
+ jobParameters:
+ condition: >-
+ or(
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_libraries.containsChange'], true),
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_mono_excluding_wasm.containsChange'], true),
+ eq(variables['isRollingBuild'], true))
+
+ #
+ # Build Mono release
+ # Only when libraries, mono, or the runtime tests changed
+ # Currently only these architectures are needed for the runtime tests.
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/mono/templates/build-job.yml
+ runtimeFlavor: mono
+ buildConfig: release
+ platforms:
+ - OSX_x64
+ - Linux_arm64
+ jobParameters:
+ condition: >-
+ or(
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_libraries.containsChange'], true),
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_runtimetests.containsChange'], true),
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_mono_excluding_wasm.containsChange'], true),
+ eq(variables['isRollingBuild'], true))
+
+ #
+ # Build Mono release with LLVM AOT
+ # Only when mono, or the runtime tests changed
+ #
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/mono/templates/build-job.yml
+ runtimeFlavor: mono
+ buildConfig: release
+ platforms:
+ - Linux_x64
+ - Linux_arm64
jobParameters:
+ runtimeVariant: llvmaot
condition: >-
- eq(dependencies.evaluate_paths.outputs['SetPathVars_coreclr.containsChange'], true)
-
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/libraries/build-job.yml
- buildConfig: Release
- platforms:
- - windows_x86
- helixQueuesTemplate: /eng/pipelines/libraries/helix-queues-setup.yml
- jobParameters:
- framework: net48
- runTests: true
- testScope: innerloop
- condition: >-
- or(
- eq(dependencies.evaluate_paths.outputs['SetPathVars_libraries.containsChange'], true),
- eq(variables['isRollingBuild'], true))
-
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/libraries/build-job.yml
- buildConfig: ${{ variables.debugOnPrReleaseOnRolling }}
- platforms:
- - windows_x64
- jobParameters:
- framework: allConfigurations
- runTests: true
- useHelix: false
- condition: >-
- or(
- eq(dependencies.evaluate_paths.outputs['SetPathVars_libraries.containsChange'], true),
- eq(variables['isRollingBuild'], true))
-
- #
- # Installer Build and Test
- # These are always built since they only take like 15 minutes
- # we expect these to be done before we finish libraries or coreclr testing.
- #
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/installer/jobs/build-job.yml
- buildConfig: ${{ variables.debugOnPrReleaseOnRolling }}
- platforms:
+ or(
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_runtimetests.containsChange'], true),
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_mono_excluding_wasm.containsChange'], true),
+ eq(variables['isRollingBuild'], true))
+
+ #
+ # Build libraries using live CoreLib
+ # These set of libraries are built always no matter what changed
+ # The reason for that is because Corelib and Installer needs it and
+ # These are part of the test matrix for Libraries changes.
+ #
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/libraries/build-job.yml
+ buildConfig: Release
+ platforms:
+ - Linux_arm
- Linux_musl_arm
- Linux_musl_arm64
- - windows_x86
- windows_arm
- windows_arm64
- - Linux_arm
- jobParameters:
- liveRuntimeBuildConfig: release
- liveLibrariesBuildConfig: Release
- runOnlyIfDependenciesSucceeded: true
- condition:
- or(
- eq(dependencies.evaluate_paths.outputs['SetPathVars_non_mono_and_wasm.containsChange'], true),
- eq(variables['isRollingBuild'], true))
-
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/installer/jobs/build-job.yml
- buildConfig: Release
- platforms:
- - OSX_arm64
- - OSX_x64
- - Linux_x64
+ - windows_x86
+ jobParameters:
+ condition:
+ or(
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_coreclr.containsChange'], true),
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_libraries.containsChange'], true),
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_installer.containsChange'], true),
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_runtimetests.containsChange'], true),
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_mono_excluding_wasm.containsChange'], true),
+ eq(variables['isRollingBuild'], true))
+
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/libraries/build-job.yml
+ buildConfig: ${{ variables.debugOnPrReleaseOnRolling }}
+ platforms:
- Linux_arm64
- Linux_musl_x64
+ - Linux_x64
+ - OSX_arm64
+ - OSX_x64
- windows_x64
- FreeBSD_x64
- jobParameters:
- liveRuntimeBuildConfig: release
- liveLibrariesBuildConfig: ${{ variables.debugOnPrReleaseOnRolling }}
- runOnlyIfDependenciesSucceeded: true
- condition:
- or(
- eq(dependencies.evaluate_paths.outputs['SetPathVars_non_mono_and_wasm.containsChange'], true),
- eq(variables['isRollingBuild'], true))
-
- #
- # 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(dependencies.evaluate_paths.outputs['SetPathVars_coreclr.containsChange'], true),
- eq(dependencies.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
- condition: >-
- or(
- eq(dependencies.evaluate_paths.outputs['SetPathVars_coreclr.containsChange'], true),
- eq(dependencies.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:
- - 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 }}
- condition: >-
- or(
- eq(dependencies.evaluate_paths.outputs['SetPathVars_coreclr.containsChange'], true),
- eq(dependencies.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:
- - OSX_arm64
- helixQueueGroup: pr
- helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
- jobParameters:
- testGroup: innerloop
- liveLibrariesBuildConfig: ${{ variables.debugOnPrReleaseOnRolling }}
- condition: >-
- or(
- eq(dependencies.evaluate_paths.outputs['SetPathVars_coreclr_AppleSilicon.containsChange'], true),
- eq(variables['isRollingBuild'], true))
-
- #
- # Mono Test builds with CoreCLR runtime tests using live libraries debug build
- # Only when Mono is changed
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/common/templates/runtimes/build-test-job.yml
- buildConfig: release
- runtimeFlavor: mono
- platforms:
- - CoreClrTestBuildHost # Either OSX_x64 or Linux_x64
- jobParameters:
- testGroup: innerloop
- condition: >-
- or(
- eq(dependencies.evaluate_paths.outputs['SetPathVars_mono_excluding_wasm.containsChange'], true),
- eq(dependencies.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: release
- runtimeFlavor: mono
- platforms:
- - windows_x64
- helixQueueGroup: pr
- helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
- jobParameters:
- testGroup: innerloop
- liveLibrariesBuildConfig: ${{ variables.debugOnPrReleaseOnRolling }}
- liveRuntimeBuildConfig: release
- runtimeVariant: minijit
- condition: >-
- or(
- eq(dependencies.evaluate_paths.outputs['SetPathVars_mono_excluding_wasm.containsChange'], true),
- eq(dependencies.evaluate_paths.outputs['SetPathVars_runtimetests.containsChange'], true),
- eq(variables['isRollingBuild'], true))
-
- #
- # Build the whole product using Mono and run runtime tests
- #
- - 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: mono
- platforms:
+ jobParameters:
+ testScope: innerloop
+ condition:
+ or(
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_coreclr.containsChange'], true),
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_libraries.containsChange'], true),
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_installer.containsChange'], true),
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_runtimetests.containsChange'], true),
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_mono_excluding_wasm.containsChange'], true),
+ eq(variables['isRollingBuild'], true))
+
+ #
+ # Libraries debug build that only runs when coreclr is changed
+ # Only do this on PR builds since we use the Release builds for these test runs in CI
+ # and those are already built above
+ #
+ - ${{ if eq(variables['isRollingBuild'], false) }}:
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/libraries/build-job.yml
+ buildConfig: Debug
+ platforms:
+ - windows_x86
+ jobParameters:
+ condition: >-
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_coreclr.containsChange'], true)
+
+ #
+ # Libraries release build that only runs when coreclr is changed in PRs
+ # We need these for checked coreclr + release libraries tests runs.
+ #
+ - ${{ if eq(variables['isRollingBuild'], false) }}:
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/libraries/build-job.yml
+ buildConfig: Release
+ platforms:
+ - Linux_x64
+ - windows_x64
+ jobParameters:
+ condition: >-
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_coreclr.containsChange'], true)
+
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/libraries/build-job.yml
+ buildConfig: Release
+ platforms:
+ - windows_x86
+ helixQueuesTemplate: /eng/pipelines/libraries/helix-queues-setup.yml
+ jobParameters:
+ framework: net48
+ runTests: true
+ testScope: innerloop
+ condition: >-
+ or(
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_libraries.containsChange'], true),
+ eq(variables['isRollingBuild'], true))
+
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/libraries/build-job.yml
+ buildConfig: ${{ variables.debugOnPrReleaseOnRolling }}
+ platforms:
+ - windows_x64
+ jobParameters:
+ framework: allConfigurations
+ runTests: true
+ useHelix: false
+ condition: >-
+ or(
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_libraries.containsChange'], true),
+ eq(variables['isRollingBuild'], true))
+
+ #
+ # Installer Build and Test
+ # These are always built since they only take like 15 minutes
+ # we expect these to be done before we finish libraries or coreclr testing.
+ #
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/installer/jobs/build-job.yml
+ buildConfig: ${{ variables.debugOnPrReleaseOnRolling }}
+ platforms:
+ - Linux_musl_arm
+ - Linux_musl_arm64
+ - windows_x86
+ - windows_arm
+ - windows_arm64
+ - Linux_arm
+ jobParameters:
+ liveRuntimeBuildConfig: release
+ liveLibrariesBuildConfig: Release
+ runOnlyIfDependenciesSucceeded: true
+ condition:
+ or(
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_non_mono_and_wasm.containsChange'], true),
+ eq(variables['isRollingBuild'], true))
+
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/installer/jobs/build-job.yml
+ buildConfig: Release
+ platforms:
+ - OSX_arm64
+ - OSX_x64
+ - Linux_x64
+ - Linux_arm64
+ - Linux_musl_x64
+ - windows_x64
+ - FreeBSD_x64
+ jobParameters:
+ liveRuntimeBuildConfig: release
+ liveLibrariesBuildConfig: ${{ variables.debugOnPrReleaseOnRolling }}
+ runOnlyIfDependenciesSucceeded: true
+ condition:
+ or(
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_non_mono_and_wasm.containsChange'], true),
+ eq(variables['isRollingBuild'], true))
+
+ #
+ # 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(dependencies.evaluate_paths.outputs['SetPathVars_coreclr.containsChange'], true),
+ eq(dependencies.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
+ condition: >-
+ or(
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_coreclr.containsChange'], true),
+ eq(dependencies.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:
- OSX_x64
- variables:
- - name: timeoutPerTestInMinutes
- value: 60
- - name: timeoutPerTestCollectionInMinutes
- value: 180
- jobParameters:
- testGroup: innerloop
- nameSuffix: AllSubsets_Mono_Minijit_RuntimeTests
- runtimeVariant: minijit
- buildArgs: -s mono+libs+clr.hosts+clr.iltools -c Release
- timeoutInMinutes: 180
- condition: >-
- or(
- eq(dependencies.evaluate_paths.outputs['SetPathVars_mono_excluding_wasm.containsChange'], true),
- eq(dependencies.evaluate_paths.outputs['SetPathVars_runtimetests.containsChange'], true),
- eq(variables['isRollingBuild'], true))
+ - Linux_x64
+ - Linux_arm64
+ - windows_x64
+ helixQueueGroup: pr
+ helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
+ jobParameters:
+ testGroup: innerloop
+ liveLibrariesBuildConfig: ${{ variables.debugOnPrReleaseOnRolling }}
+ condition: >-
+ or(
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_coreclr.containsChange'], true),
+ eq(dependencies.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:
+ - OSX_arm64
+ helixQueueGroup: pr
+ helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
+ jobParameters:
+ testGroup: innerloop
+ liveLibrariesBuildConfig: ${{ variables.debugOnPrReleaseOnRolling }}
+ condition: >-
+ or(
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_coreclr_AppleSilicon.containsChange'], true),
+ eq(variables['isRollingBuild'], true))
+
+ #
+ # Mono Test builds with CoreCLR runtime tests using live libraries debug build
+ # Only when Mono is changed
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/common/templates/runtimes/build-test-job.yml
+ buildConfig: release
+ runtimeFlavor: mono
+ platforms:
+ - CoreClrTestBuildHost # Either OSX_x64 or Linux_x64
+ jobParameters:
+ testGroup: innerloop
+ condition: >-
+ or(
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_mono_excluding_wasm.containsChange'], true),
+ eq(dependencies.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: release
+ runtimeFlavor: mono
+ platforms:
+ - windows_x64
+ helixQueueGroup: pr
+ helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
+ jobParameters:
+ testGroup: innerloop
+ liveLibrariesBuildConfig: ${{ variables.debugOnPrReleaseOnRolling }}
+ liveRuntimeBuildConfig: release
+ runtimeVariant: minijit
+ condition: >-
+ or(
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_mono_excluding_wasm.containsChange'], true),
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_runtimetests.containsChange'], true),
+ eq(variables['isRollingBuild'], true))
+
+ #
+ # Build the whole product using Mono and run runtime tests
+ #
+ - 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: mono
+ platforms:
+ - OSX_x64
+ variables:
+ - name: timeoutPerTestInMinutes
+ value: 60
+ - name: timeoutPerTestCollectionInMinutes
+ value: 180
+ jobParameters:
+ testGroup: innerloop
+ nameSuffix: AllSubsets_Mono_Minijit_RuntimeTests
+ runtimeVariant: minijit
+ buildArgs: -s mono+libs+clr.hosts+clr.iltools -c Release
+ timeoutInMinutes: 180
+ condition: >-
+ or(
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_mono_excluding_wasm.containsChange'], true),
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_runtimetests.containsChange'], true),
+ eq(variables['isRollingBuild'], true))
+
+ extraStepsTemplate: /eng/pipelines/common/templates/runtimes/build-runtime-tests-and-send-to-helix.yml
+ extraStepsParameters:
+ creator: dotnet-bot
+ testRunNamePrefixSuffix: Mono_Release
+
+ #
+ # Mono CoreCLR runtime Test executions using live libraries in interpreter mode
+ # Only when Mono 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: mono
+ platforms:
+ - OSX_x64
+ variables:
+ - name: timeoutPerTestInMinutes
+ value: 60
+ - name: timeoutPerTestCollectionInMinutes
+ value: 180
+ jobParameters:
+ testGroup: innerloop
+ nameSuffix: AllSubsets_Mono_Interpreter_RuntimeTests
+ runtimeVariant: monointerpreter
+ buildArgs: -s mono+libs+clr.hosts+clr.iltools -c Release
+ timeoutInMinutes: 180
+ condition: >-
+ or(
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_mono_excluding_wasm.containsChange'], true),
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_runtimetests.containsChange'], true),
+ eq(variables['isRollingBuild'], true))
+ extraStepsTemplate: /eng/pipelines/common/templates/runtimes/build-runtime-tests-and-send-to-helix.yml
+ extraStepsParameters:
+ creator: dotnet-bot
+ testRunNamePrefixSuffix: Mono_Release
+ #
+ # Mono CoreCLR runtime Test executions using live libraries and LLVM AOT
+ # Only when Mono 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: mono
+ platforms:
+ - Linux_x64
+ # Disabled pending outcome of https://github.com/dotnet/runtime/issues/60234 investigation
+ #- Linux_arm64
+ variables:
+ - name: timeoutPerTestInMinutes
+ value: 60
+ - name: timeoutPerTestCollectionInMinutes
+ value: 180
+ jobParameters:
+ testGroup: innerloop
+ nameSuffix: AllSubsets_Mono_LLVMAot_RuntimeTests
+ runtimeVariant: llvmaot
+ buildArgs: -s mono+libs+clr.hosts+clr.iltools -c Release /p:MonoEnableLLVM=true /p:MonoBundleLLVMOptimizer=true /p:MonoLLVMUseCxx11Abi=true
+ timeoutInMinutes: 180
+
+ condition: >-
+ or(
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_mono_excluding_wasm.containsChange'], true),
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_runtimetests.containsChange'], true),
+ eq(variables['isRollingBuild'], true))
+ extraStepsTemplate: /eng/pipelines/common/templates/runtimes/build-runtime-tests-and-send-to-helix.yml
+ extraStepsParameters:
+ creator: dotnet-bot
+ testRunNamePrefixSuffix: Mono_Release
+
+ #
+ # Mono CoreCLR runtime Test executions using live libraries and LLVM Full AOT
+ # Only when Mono 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: mono
+ platforms:
+ - Linux_x64
+ - Linux_arm64
+ variables:
+ - name: timeoutPerTestInMinutes
+ value: 60
+ - name: timeoutPerTestCollectionInMinutes
+ value: 180
+ jobParameters:
+ testGroup: innerloop
+ nameSuffix: AllSubsets_Mono_LLVMFullAot_RuntimeTests
+ runtimeVariant: llvmfullaot
+ buildArgs: -s mono+libs+clr.hosts+clr.iltools -c Release /p:MonoEnableLLVM=true /p:MonoBundleLLVMOptimizer=true /p:MonoLLVMUseCxx11Abi=true
+ timeoutInMinutes: 300
- extraStepsTemplate: /eng/pipelines/common/templates/runtimes/build-runtime-tests-and-send-to-helix.yml
- extraStepsParameters:
- creator: dotnet-bot
- testRunNamePrefixSuffix: Mono_Release
-
- #
- # Mono CoreCLR runtime Test executions using live libraries in interpreter mode
- # Only when Mono 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: mono
- platforms:
+ condition: >-
+ or(
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_mono_excluding_wasm.containsChange'], true),
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_runtimetests.containsChange'], true),
+ eq(variables['isRollingBuild'], true))
+ extraStepsTemplate: /eng/pipelines/common/templates/runtimes/build-runtime-tests-and-send-to-helix.yml
+ extraStepsParameters:
+ creator: dotnet-bot
+ testRunNamePrefixSuffix: Mono_Release
+
+ #
+ # Libraries Release Test Execution against a release mono runtime.
+ # Only when libraries or mono changed
+ #
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/libraries/run-test-job.yml
+ runtimeFlavor: mono
+ buildConfig: ${{ variables.debugOnPrReleaseOnRolling }}
+ platforms:
+ # - windows_x64
- OSX_x64
- variables:
- - name: timeoutPerTestInMinutes
- value: 60
- - name: timeoutPerTestCollectionInMinutes
- value: 180
- jobParameters:
- testGroup: innerloop
- nameSuffix: AllSubsets_Mono_Interpreter_RuntimeTests
- runtimeVariant: monointerpreter
- buildArgs: -s mono+libs+clr.hosts+clr.iltools -c Release
- timeoutInMinutes: 180
- condition: >-
- or(
- eq(dependencies.evaluate_paths.outputs['SetPathVars_mono_excluding_wasm.containsChange'], true),
- eq(dependencies.evaluate_paths.outputs['SetPathVars_runtimetests.containsChange'], true),
- eq(variables['isRollingBuild'], true))
- extraStepsTemplate: /eng/pipelines/common/templates/runtimes/build-runtime-tests-and-send-to-helix.yml
- extraStepsParameters:
- creator: dotnet-bot
- testRunNamePrefixSuffix: Mono_Release
- #
- # Mono CoreCLR runtime Test executions using live libraries and LLVM AOT
- # Only when Mono 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: mono
- platforms:
+ - Linux_arm64
+ - Linux_x64
+ helixQueuesTemplate: /eng/pipelines/libraries/helix-queues-setup.yml
+ jobParameters:
+ isOfficialBuild: false
+ runtimeDisplayName: mono
+ testScope: innerloop
+ liveRuntimeBuildConfig: release
+ condition: >-
+ or(
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_libraries.containsChange'], true),
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_mono_excluding_wasm.containsChange'], true),
+ eq(variables['isRollingBuild'], true))
+
+ #
+ # Libraries Release Test Execution against a release mono interpreter runtime.
+ # Only when libraries or mono changed
+ #
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/libraries/run-test-job.yml
+ runtimeFlavor: mono
+ buildConfig: ${{ variables.debugOnPrReleaseOnRolling }}
+ platforms:
+ # - windows_x64
+ #- OSX_x64
- Linux_x64
- # Disabled pending outcome of https://github.com/dotnet/runtime/issues/60234 investigation
- #- Linux_arm64
- variables:
- - name: timeoutPerTestInMinutes
- value: 60
- - name: timeoutPerTestCollectionInMinutes
- value: 180
- jobParameters:
- testGroup: innerloop
- nameSuffix: AllSubsets_Mono_LLVMAot_RuntimeTests
- runtimeVariant: llvmaot
- buildArgs: -s mono+libs+clr.hosts+clr.iltools -c Release /p:MonoEnableLLVM=true /p:MonoBundleLLVMOptimizer=true /p:MonoLLVMUseCxx11Abi=true
- timeoutInMinutes: 180
-
- condition: >-
- or(
- eq(dependencies.evaluate_paths.outputs['SetPathVars_mono_excluding_wasm.containsChange'], true),
- eq(dependencies.evaluate_paths.outputs['SetPathVars_runtimetests.containsChange'], true),
- eq(variables['isRollingBuild'], true))
- extraStepsTemplate: /eng/pipelines/common/templates/runtimes/build-runtime-tests-and-send-to-helix.yml
- extraStepsParameters:
- creator: dotnet-bot
- testRunNamePrefixSuffix: Mono_Release
-
- #
- # Mono CoreCLR runtime Test executions using live libraries and LLVM Full AOT
- # Only when Mono 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: mono
- platforms:
+ helixQueuesTemplate: /eng/pipelines/libraries/helix-queues-setup.yml
+ jobParameters:
+ isOfficialBuild: false
+ interpreter: true
+ runtimeDisplayName: mono_interpreter
+ testScope: innerloop
+ liveRuntimeBuildConfig: release
+ condition: >-
+ or(
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_libraries.containsChange'], true),
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_mono_excluding_wasm.containsChange'], true),
+ eq(variables['isRollingBuild'], true))
+
+ #
+ # Libraries Release Test Execution against a release coreclr runtime
+ # Only when the PR contains a libraries change
+ #
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/libraries/run-test-job.yml
+ buildConfig: Release
+ platforms:
+ - windows_x86
+ helixQueuesTemplate: /eng/pipelines/libraries/helix-queues-setup.yml
+ jobParameters:
+ isOfficialBuild: false
+ testScope: innerloop
+ liveRuntimeBuildConfig: release
+ condition: >-
+ or(
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_libraries.containsChange'], true),
+ eq(variables['isRollingBuild'], true))
+
+ #
+ # Libraries Debug Test Execution against a release coreclr runtime
+ # Only when the PR contains a libraries change
+ #
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/libraries/run-test-job.yml
+ buildConfig: ${{ variables.debugOnPrReleaseOnRolling }}
+ platforms:
+ - windows_x64
+ - OSX_x64
- Linux_x64
+ - Linux_musl_x64
+ helixQueuesTemplate: /eng/pipelines/libraries/helix-queues-setup.yml
+ jobParameters:
+ isOfficialBuild: false
+ testScope: innerloop
+ liveRuntimeBuildConfig: release
+ condition: >-
+ or(
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_libraries.containsChange'], true),
+ eq(variables['isRollingBuild'], true))
+
+ # The next three jobs run checked coreclr + <either debug or release in PR> libraries tests.
+ # The matrix looks like the following, where the right columns specify which configurations
+ # the libraries tests are built in.
+ # ________________________________________
+ # | Platform | PR | Rolling |
+ # | ---------------- | ------- | ------- |
+ # | linux-arm64 | Debug | Release |
+ # | windows-x86 | Debug | Release |
+ # | linux-musl-x64 | Debug | Release |
+ # | OSX-x64 | Debug | Release |
+ # | linux-musl-arm | Release | Release |
+ # | linux-musl-arm64 | Release | Release |
+ # | linux-x64 | Release | Release |
+ # | windows-x64 | Release | Release |
+
+ #
+ # Debug (PR) / Release (rolling) Libraries Test Execution against a checked runtime
+ # Only when the PR contains a coreclr change
+ #
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/libraries/run-test-job.yml
+ buildConfig: ${{ variables.debugOnPrReleaseOnRolling }}
+ platforms:
- Linux_arm64
- variables:
- - name: timeoutPerTestInMinutes
- value: 60
- - name: timeoutPerTestCollectionInMinutes
- value: 180
- jobParameters:
- testGroup: innerloop
- nameSuffix: AllSubsets_Mono_LLVMFullAot_RuntimeTests
- runtimeVariant: llvmfullaot
- buildArgs: -s mono+libs+clr.hosts+clr.iltools -c Release /p:MonoEnableLLVM=true /p:MonoBundleLLVMOptimizer=true /p:MonoLLVMUseCxx11Abi=true
- timeoutInMinutes: 300
-
- condition: >-
- or(
- eq(dependencies.evaluate_paths.outputs['SetPathVars_mono_excluding_wasm.containsChange'], true),
- eq(dependencies.evaluate_paths.outputs['SetPathVars_runtimetests.containsChange'], true),
- eq(variables['isRollingBuild'], true))
- extraStepsTemplate: /eng/pipelines/common/templates/runtimes/build-runtime-tests-and-send-to-helix.yml
- extraStepsParameters:
- creator: dotnet-bot
- testRunNamePrefixSuffix: Mono_Release
-
- #
- # Libraries Release Test Execution against a release mono runtime.
- # Only when libraries or mono changed
- #
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/libraries/run-test-job.yml
- runtimeFlavor: mono
- buildConfig: ${{ variables.debugOnPrReleaseOnRolling }}
- platforms:
- # - windows_x64
- - OSX_x64
- - Linux_arm64
- - Linux_x64
- helixQueuesTemplate: /eng/pipelines/libraries/helix-queues-setup.yml
- jobParameters:
- isOfficialBuild: false
- runtimeDisplayName: mono
- testScope: innerloop
- liveRuntimeBuildConfig: release
- condition: >-
- or(
- eq(dependencies.evaluate_paths.outputs['SetPathVars_libraries.containsChange'], true),
- eq(dependencies.evaluate_paths.outputs['SetPathVars_mono_excluding_wasm.containsChange'], true),
- eq(variables['isRollingBuild'], true))
-
- #
- # Libraries Release Test Execution against a release mono interpreter runtime.
- # Only when libraries or mono changed
- #
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/libraries/run-test-job.yml
- runtimeFlavor: mono
- buildConfig: ${{ variables.debugOnPrReleaseOnRolling }}
- platforms:
- # - windows_x64
- #- OSX_x64
- - Linux_x64
- helixQueuesTemplate: /eng/pipelines/libraries/helix-queues-setup.yml
- jobParameters:
- isOfficialBuild: false
- interpreter: true
- runtimeDisplayName: mono_interpreter
- testScope: innerloop
- liveRuntimeBuildConfig: release
- condition: >-
- or(
- eq(dependencies.evaluate_paths.outputs['SetPathVars_libraries.containsChange'], true),
- eq(dependencies.evaluate_paths.outputs['SetPathVars_mono_excluding_wasm.containsChange'], true),
- eq(variables['isRollingBuild'], true))
-
- #
- # Libraries Release Test Execution against a release coreclr runtime
- # Only when the PR contains a libraries change
- #
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/libraries/run-test-job.yml
- buildConfig: Release
- platforms:
- - windows_x86
- helixQueuesTemplate: /eng/pipelines/libraries/helix-queues-setup.yml
- jobParameters:
- isOfficialBuild: false
- testScope: innerloop
- liveRuntimeBuildConfig: release
- condition: >-
- or(
- eq(dependencies.evaluate_paths.outputs['SetPathVars_libraries.containsChange'], true),
- eq(variables['isRollingBuild'], true))
-
- #
- # Libraries Debug Test Execution against a release coreclr runtime
- # Only when the PR contains a libraries change
- #
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/libraries/run-test-job.yml
- buildConfig: ${{ variables.debugOnPrReleaseOnRolling }}
- platforms:
- - windows_x64
- - OSX_x64
- - Linux_x64
- - Linux_musl_x64
- helixQueuesTemplate: /eng/pipelines/libraries/helix-queues-setup.yml
- jobParameters:
- isOfficialBuild: false
- testScope: innerloop
- liveRuntimeBuildConfig: release
- condition: >-
- or(
- eq(dependencies.evaluate_paths.outputs['SetPathVars_libraries.containsChange'], true),
- eq(variables['isRollingBuild'], true))
-
- # The next three jobs run checked coreclr + <either debug or release in PR> libraries tests.
- # The matrix looks like the following, where the right columns specify which configurations
- # the libraries tests are built in.
- # ________________________________________
- # | Platform | PR | Rolling |
- # | ---------------- | ------- | ------- |
- # | linux-arm64 | Debug | Release |
- # | windows-x86 | Debug | Release |
- # | linux-musl-x64 | Debug | Release |
- # | OSX-x64 | Debug | Release |
- # | linux-musl-arm | Release | Release |
- # | linux-musl-arm64 | Release | Release |
- # | linux-x64 | Release | Release |
- # | windows-x64 | Release | Release |
-
- #
- # Debug (PR) / Release (rolling) Libraries Test Execution against a checked runtime
- # Only when the PR contains a coreclr change
- #
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/libraries/run-test-job.yml
- buildConfig: ${{ variables.debugOnPrReleaseOnRolling }}
- platforms:
- - Linux_arm64
- - windows_x86
- - Linux_musl_x64
- helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
- helixQueueGroup: libraries
- jobParameters:
- testScope: innerloop
- liveRuntimeBuildConfig: checked
- condition: >-
- or(
- eq(dependencies.evaluate_paths.outputs['SetPathVars_coreclr.containsChange'], true),
- eq(variables['isRollingBuild'], true))
-
- #
- # Release Libraries Test Execution against a checked runtime
- # Only if CoreCLR or Libraries is changed
- #
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/libraries/run-test-job.yml
- buildConfig: Release
- platforms:
- - Linux_musl_arm
- - Linux_musl_arm64
- - Linux_x64
- - windows_x64
- helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
- helixQueueGroup: libraries
- jobParameters:
- testScope: innerloop
- liveRuntimeBuildConfig: checked
- condition: >-
- or(
- eq(dependencies.evaluate_paths.outputs['SetPathVars_coreclr.containsChange'], true),
- eq(variables['isRollingBuild'], true))
-
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/libraries/run-test-job.yml
- buildConfig: ${{ variables.debugOnPrReleaseOnRolling }}
- platforms:
- - OSX_x64
- helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
- helixQueueGroup: libraries
- jobParameters:
- testScope: innerloop
- liveRuntimeBuildConfig: checked
- condition: >-
- or(
- eq(dependencies.evaluate_paths.outputs['SetPathVars_coreclr.containsChange'], true),
- eq(dependencies.evaluate_paths.outputs['SetPathVars_libraries.containsChange'], true),
- eq(variables['isRollingBuild'], true))
-
- #
- # Sourcebuild legs
- # We have 3 important legs for source-build:
- # - Centos.7 (ensures that RH keeps working)
- # - Linux-x64 portable (used for dependency flow and downstream PR verification)
- # - Banana.24 - Non-existent RID to ensure we don't break RIDs we don't know about.
- #
- # Running all of these everywhere is wasteful. Run Banana.24 and CentOS.7 in rolling CI,
- # Run Linux-x64 in PR.
-
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/common/global-build-job.yml
- buildConfig: Release
- helixQueueGroup: pr
- platforms:
- - SourceBuild_Centos7_x64
- jobParameters:
- nameSuffix: Centos7SourceBuild
- extraStepsParameters:
- name: SourceBuildPackages
- timeoutInMinutes: 95
- condition: eq(variables['isRollingBuild'], true)
-
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/common/global-build-job.yml
- buildConfig: Debug
- helixQueueGroup: pr
- platforms:
- - SourceBuild_Banana24_x64
- jobParameters:
- nameSuffix: Banana24SourceBuild
- extraStepsParameters:
- name: SourceBuildPackages
- timeoutInMinutes: 95
- condition: eq(variables['isRollingBuild'], true)
+ - windows_x86
+ - Linux_musl_x64
+ helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
+ helixQueueGroup: libraries
+ jobParameters:
+ testScope: innerloop
+ liveRuntimeBuildConfig: checked
+ condition: >-
+ or(
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_coreclr.containsChange'], true),
+ eq(variables['isRollingBuild'], true))
+
+ #
+ # Release Libraries Test Execution against a checked runtime
+ # Only if CoreCLR or Libraries is changed
+ #
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/libraries/run-test-job.yml
+ buildConfig: Release
+ platforms:
+ - Linux_musl_arm
+ - Linux_musl_arm64
+ - Linux_x64
+ - windows_x64
+ helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
+ helixQueueGroup: libraries
+ jobParameters:
+ testScope: innerloop
+ liveRuntimeBuildConfig: checked
+ condition: >-
+ or(
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_coreclr.containsChange'], true),
+ eq(variables['isRollingBuild'], true))
+
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/libraries/run-test-job.yml
+ buildConfig: ${{ variables.debugOnPrReleaseOnRolling }}
+ platforms:
+ - OSX_x64
+ helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
+ helixQueueGroup: libraries
+ jobParameters:
+ testScope: innerloop
+ liveRuntimeBuildConfig: checked
+ condition: >-
+ or(
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_coreclr.containsChange'], true),
+ eq(dependencies.evaluate_paths.outputs['SetPathVars_libraries.containsChange'], true),
+ eq(variables['isRollingBuild'], true))
+
+ #
+ # Sourcebuild legs
+ # We have 3 important legs for source-build:
+ # - Centos.7 (ensures that RH keeps working)
+ # - Linux-x64 portable (used for dependency flow and downstream PR verification)
+ # - Banana.24 - Non-existent RID to ensure we don't break RIDs we don't know about.
+ #
+ # Running all of these everywhere is wasteful. Run Banana.24 and CentOS.7 in rolling CI,
+ # Run Linux-x64 in PR.
+
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/common/global-build-job.yml
+ buildConfig: Release
+ helixQueueGroup: pr
+ platforms:
+ - SourceBuild_Centos7_x64
+ jobParameters:
+ nameSuffix: Centos7SourceBuild
+ extraStepsParameters:
+ name: SourceBuildPackages
+ timeoutInMinutes: 95
+ condition: eq(variables['isRollingBuild'], true)
+
+ - template: /eng/pipelines/common/platform-matrix.yml
+ parameters:
+ jobTemplate: /eng/pipelines/common/global-build-job.yml
+ buildConfig: Debug
+ helixQueueGroup: pr
+ platforms:
+ - SourceBuild_Banana24_x64
+ jobParameters:
+ nameSuffix: Banana24SourceBuild
+ extraStepsParameters:
+ name: SourceBuildPackages
+ timeoutInMinutes: 95
+ condition: eq(variables['isRollingBuild'], true)