未验证 提交 db3c0c16 编写于 作者: S Santiago Fernandez Madero 提交者: GitHub

Move platform-matrix to common and add an extra common layer for all jobs to...

Move platform-matrix to common and add an extra common layer for all jobs to define common variables (#120)

* Add an extra common layer for all jobs to define common variables

* Move platform-matrix.yml to a common location

* PR Feedback
上级 221e2b69
parameters:
jobTemplate: ''
buildConfig: ''
platforms: []
# platformGroup is a named collection of platforms. Allowed values:
# 'all' - all platforms
# 'gcstress' - platforms that support running under GCStress0x3 and GCStress0xC scenarios
platformGroup: ''
# helixQueueGroup is a named collection of Helix Queues. If specified, it determines which Helix queues are
# used, instead of the usual criteria. Allowed values:
# 'pr' - the queues used for a pull request for the platform. Typically a small set.
# 'ci' - the queues used for a CI (post-merge) test run.
# 'all' - the queues used for non-PR, non-CI test runs, e.g., Manual or Scheduled runs. Typically this is all available queues.
# 'corefx' - the queues used for a corefx test run.
helixQueueGroup: 'pr'
stagedBuild: false
# When set to false, suppresses reuse of OSX managed build artifacts (for pipelines without an OSX obj)
managedOsxBuild: true
jobParameters: {}
jobs:
# Linux arm
- ${{ if or(containsValue(parameters.platforms, 'Linux_arm'), in(parameters.platformGroup, 'all', 'gcstress')) }}:
- template: xplat-setup.yml
parameters:
jobTemplate: ${{ parameters.jobTemplate }}
osGroup: Linux
archType: arm
container:
image: ubuntu-16.04-cross-14.04-23cacb0-20191023143847
registry: mcr
jobParameters:
stagedBuild: ${{ parameters.stagedBuild }}
buildConfig: ${{ parameters.buildConfig }}
managedTestBuildOsGroup: Linux
helixQueues:
- ${{ if eq(variables['System.TeamProject'], 'public') }}:
- (Ubuntu.1804.Arm32.Open)Ubuntu.1804.Armarch.Open@mcr.microsoft.com/dotnet-buildtools/prereqs:ubuntu-18.04-helix-arm32v7-30f6673-20190814153226
- ${{ if eq(variables['System.TeamProject'], 'internal') }}:
- (Debian.9.Arm32)Ubuntu.1804.Armarch@mcr.microsoft.com/dotnet-buildtools/prereqs:debian-9-helix-arm32v7-74c9941-20190620155841
- (Ubuntu.1804.Arm32)Ubuntu.1804.Armarch@mcr.microsoft.com/dotnet-buildtools/prereqs:ubuntu-18.04-helix-arm32v7-30f6673-20190814153226
crossrootfsDir: '/crossrootfs/arm'
${{ insert }}: ${{ parameters.jobParameters }}
# Linux arm64
- ${{ if or(containsValue(parameters.platforms, 'Linux_arm64'), in(parameters.platformGroup, 'all', 'gcstress')) }}:
- template: xplat-setup.yml
parameters:
jobTemplate: ${{ parameters.jobTemplate }}
osGroup: Linux
archType: arm64
container:
image: ubuntu-16.04-cross-arm64-cfdd435-20191023143847
registry: mcr
jobParameters:
stagedBuild: ${{ parameters.stagedBuild }}
buildConfig: ${{ parameters.buildConfig }}
managedTestBuildOsGroup: Linux
helixQueues:
- ${{ if eq(variables['System.TeamProject'], 'public') }}:
- (Ubuntu.1804.Arm64.Open)Ubuntu.1804.Armarch.Open@mcr.microsoft.com/dotnet-buildtools/prereqs:ubuntu-18.04-helix-arm64v8-a45aeeb-20190620155855
- ${{ if and(eq(variables['System.TeamProject'], 'public'), notIn(parameters.helixQueueGroup, 'pr', 'ci', 'corefx')) }}:
- (Debian.9.Arm64.Open)Ubuntu.1804.Armarch.Open@mcr.microsoft.com/dotnet-buildtools/prereqs:debian-9-helix-arm64v8-74c9941-20190620155840
- ${{ if eq(variables['System.TeamProject'], 'internal') }}:
- (Debian.9.Arm64)Ubuntu.1804.ArmArch@mcr.microsoft.com/dotnet-buildtools/prereqs:debian-9-helix-arm64v8-74c9941-20190620155840
- (Ubuntu.1804.Arm64)Ubuntu.1804.ArmArch@mcr.microsoft.com/dotnet-buildtools/prereqs:ubuntu-18.04-helix-arm64v8-a45aeeb-20190620155855
crossrootfsDir: '/crossrootfs/arm64'
${{ insert }}: ${{ parameters.jobParameters }}
# Linux musl x64
- ${{ if or(containsValue(parameters.platforms, 'Linux_musl_x64'), eq(parameters.platformGroup, 'all')) }}:
- template: xplat-setup.yml
parameters:
jobTemplate: ${{ parameters.jobTemplate }}
osGroup: Linux
osSubgroup: _musl
archType: x64
container:
image: alpine-3.9-WithNode-0fc54a3-20190918214015
registry: mcr
jobParameters:
stagedBuild: ${{ parameters.stagedBuild }}
buildConfig: ${{ parameters.buildConfig }}
${{ if ne(parameters.managedOsxBuild, true) }}:
managedTestBuildOsGroup: Linux
managedTestBuildOsSubgroup: _musl
${{ if eq(parameters.managedOsxBuild, true) }}:
managedTestBuildOsGroup: OSX
helixQueues:
- ${{ if eq(variables['System.TeamProject'], 'public') }}:
- (Alpine.310.Amd64.Open)Ubuntu.1604.Amd64.Open@mcr.microsoft.com/dotnet-buildtools/prereqs:alpine-3.10-helix-3043688-20190918214010
- ${{ if eq(variables['System.TeamProject'], 'internal') }}:
- (Alpine.38.Amd64)ubuntu.1604.amd64@mcr.microsoft.com/dotnet-buildtools/prereqs:alpine-3.8-helix-09ca40b-20190508143246
- (Alpine.39.Amd64)ubuntu.1604.amd64@mcr.microsoft.com/dotnet-buildtools/prereqs:alpine-3.9-helix-09ca40b-20190508143246
- (Alpine.310.Amd64)ubuntu.1604.amd64@mcr.microsoft.com/dotnet-buildtools/prereqs:alpine-3.10-helix-3043688-20190918214010
${{ insert }}: ${{ parameters.jobParameters }}
# Linux musl arm64
- ${{ if or(containsValue(parameters.platforms, 'Linux_musl_arm64'), eq(parameters.platformGroup, 'all')) }}:
- template: xplat-setup.yml
parameters:
jobTemplate: ${{ parameters.jobTemplate }}
osGroup: Linux
osSubgroup: _musl
archType: arm64
container:
image: ubuntu-16.04-cross-arm64-alpine-406629a-20191023143847
registry: mcr
jobParameters:
stagedBuild: ${{ parameters.stagedBuild }}
buildConfig: ${{ parameters.buildConfig }}
managedTestBuildOsGroup: Linux
helixQueues:
- ${{ if eq(variables['System.TeamProject'], 'public') }}:
- (Alpine.38.Arm64.Open)Ubuntu.1804.ArmArch.Open@mcr.microsoft.com/dotnet-buildtools/prereqs:alpine-3.8-helix-arm64v8-a45aeeb-20190620184035
- ${{ if eq(variables['System.TeamProject'], 'internal') }}:
- (Alpine.38.Arm64)Ubuntu.1804.ArmArch@mcr.microsoft.com/dotnet-buildtools/prereqs:alpine-3.8-helix-arm64v8-a45aeeb-20190620184035
crossrootfsDir: '/crossrootfs/arm64'
${{ insert }}: ${{ parameters.jobParameters }}
# Linux rhel6 x64
- ${{ if or(containsValue(parameters.platforms, 'Linux_rhel6_x64'), eq(parameters.platformGroup, 'all')) }}:
- template: xplat-setup.yml
parameters:
jobTemplate: ${{ parameters.jobTemplate }}
osGroup: Linux
osSubgroup: _rhel6
archType: x64
container:
image: centos-6-f39df28-20191023143802
registry: mcr
jobParameters:
stagedBuild: ${{ parameters.stagedBuild }}
buildConfig: ${{ parameters.buildConfig }}
${{ if ne(parameters.managedOsxBuild, true) }}:
managedTestBuildOsGroup: Linux_rhel
${{ if eq(parameters.managedOsxBuild, true) }}:
managedTestBuildOsGroup: OSX
helixQueues:
- ${{ if eq(variables['System.TeamProject'], 'public') }}:
- RedHat.6.Amd64.Open
- ${{ if eq(variables['System.TeamProject'], 'internal') }}:
- RedHat.6.Amd64
${{ insert }}: ${{ parameters.jobParameters }}
# Linux x64
- ${{ if or(containsValue(parameters.platforms, 'Linux_x64'), in(parameters.platformGroup, 'all', 'gcstress')) }}:
- template: xplat-setup.yml
parameters:
jobTemplate: ${{ parameters.jobTemplate }}
osGroup: Linux
archType: x64
container:
image: centos-7-f39df28-20191023143754
registry: mcr
jobParameters:
stagedBuild: ${{ parameters.stagedBuild }}
buildConfig: ${{ parameters.buildConfig }}
${{ if ne(parameters.managedOsxBuild, true) }}:
managedTestBuildOsGroup: Linux
${{ if eq(parameters.managedOsxBuild, true) }}:
managedTestBuildOsGroup: OSX
helixQueues:
- ${{ if and(eq(variables['System.TeamProject'], 'public'), in(parameters.helixQueueGroup, 'pr', 'ci', 'corefx')) }}:
- Ubuntu.1804.Amd64.Open
- ${{ if and(eq(variables['System.TeamProject'], 'public'), notIn(parameters.helixQueueGroup, 'pr', 'ci', 'corefx')) }}:
- Debian.9.Amd64.Open
- Ubuntu.1604.Amd64.Open
- Ubuntu.1804.Amd64.Open
- Centos.7.Amd64.Open
- RedHat.7.Amd64.Open
- ${{ if eq(variables['System.TeamProject'], 'internal') }}:
- Debian.9.Amd64
- Ubuntu.1604.Amd64
- Ubuntu.1804.Amd64
- Centos.7.Amd64
- (Fedora.28.Amd64)Ubuntu.1604.amd64@mcr.microsoft.com/dotnet-buildtools/prereqs:fedora-28-helix-09ca40b-20190508143249
- RedHat.7.Amd64
${{ insert }}: ${{ parameters.jobParameters }}
# FreeBSD
# FreeBSD machines are currently offline. Re-enable in the official build when
# the machines are healthy.
# - template: xplat-setup.yml
# parameters:
# jobTemplate: ${{ parameters.jobTemplate }}
# osGroup: FreeBSD
# archType: x64
# jobParameters:
# buildConfig: ${{ parameters.buildConfig }}
# # There are no FreeBSD helix queues, so we don't run tests at the moment.
# helixQueues:
# asString: ''
# asArray: []
# ${{ insert }}: ${{ parameters.jobParameters }}
# macOS x64
- ${{ if or(containsValue(parameters.platforms, 'OSX_x64'), eq(parameters.platformGroup, 'all')) }}:
- template: xplat-setup.yml
parameters:
jobTemplate: ${{ parameters.jobTemplate }}
osGroup: OSX
archType: x64
jobParameters:
stagedBuild: ${{ parameters.stagedBuild }}
buildConfig: ${{ parameters.buildConfig }}
managedTestBuildOsGroup: OSX
helixQueues:
- ${{ if and(eq(variables['System.TeamProject'], 'public'), in(parameters.helixQueueGroup, 'pr', 'ci', 'corefx')) }}:
- OSX.1013.Amd64.Open
- ${{ if and(eq(variables['System.TeamProject'], 'public'), notIn(parameters.helixQueueGroup, 'pr', 'ci', 'corefx')) }}:
- OSX.1013.Amd64.Open
- OSX.1014.Amd64.Open
- ${{ if eq(variables['System.TeamProject'], 'internal') }}:
- OSX.1013.Amd64
- OSX.1014.Amd64
${{ insert }}: ${{ parameters.jobParameters }}
# Windows x64
- ${{ if or(containsValue(parameters.platforms, 'Windows_NT_x64'), in(parameters.platformGroup, 'all', 'gcstress')) }}:
- template: xplat-setup.yml
parameters:
jobTemplate: ${{ parameters.jobTemplate }}
osGroup: Windows_NT
archType: x64
jobParameters:
stagedBuild: ${{ parameters.stagedBuild }}
buildConfig: ${{ parameters.buildConfig }}
managedTestBuildOsGroup: Windows_NT
helixQueues:
- ${{ if and(eq(variables['System.TeamProject'], 'public'), in(parameters.helixQueueGroup, 'pr', 'ci', 'corefx')) }}:
- Windows.10.Amd64.Open
- ${{ if and(eq(variables['System.TeamProject'], 'public'), notIn(parameters.helixQueueGroup, 'pr', 'ci', 'corefx')) }}:
- (Windows.Nano.1809.Amd64.Open)windows.10.amd64.serverrs5.open@mcr.microsoft.com/dotnet-buildtools/prereqs:nanoserver-1809-helix-amd64-61052b7-20190723211353
- Windows.7.Amd64.Open
- Windows.81.Amd64.Open
- Windows.10.Amd64.Open
- ${{ if eq(variables['System.TeamProject'], 'internal') }}:
- Windows.7.Amd64
- Windows.81.Amd64
- Windows.10.Amd64
- Windows.10.Amd64.Core
- (Windows.Nano.1809.Amd64.Open)windows.10.amd64.serverrs5.open@mcr.microsoft.com/dotnet-buildtools/prereqs:nanoserver-1809-helix-amd64-61052b7-20190723211353
${{ insert }}: ${{ parameters.jobParameters }}
# Windows x86
- ${{ if or(containsValue(parameters.platforms, 'Windows_NT_x86'), in(parameters.platformGroup, 'all', 'gcstress')) }}:
- template: xplat-setup.yml
parameters:
jobTemplate: ${{ parameters.jobTemplate }}
osGroup: Windows_NT
archType: x86
jobParameters:
stagedBuild: ${{ parameters.stagedBuild }}
buildConfig: ${{ parameters.buildConfig }}
managedTestBuildOsGroup: Windows_NT
helixQueues:
- ${{ if and(eq(variables['System.TeamProject'], 'public'), in(parameters.helixQueueGroup, 'pr', 'ci', 'corefx')) }}:
- Windows.10.Amd64.Open
- ${{ if and(eq(variables['System.TeamProject'], 'public'), notIn(parameters.helixQueueGroup, 'pr', 'ci', 'corefx')) }}:
- Windows.7.Amd64.Open
- Windows.81.Amd64.Open
- Windows.10.Amd64.Open
- ${{ if eq(variables['System.TeamProject'], 'internal') }}:
- Windows.7.Amd64
- Windows.81.Amd64
- Windows.10.Amd64
- Windows.10.Amd64.Core
${{ insert }}: ${{ parameters.jobParameters }}
# Windows arm
- ${{ if or(containsValue(parameters.platforms, 'Windows_NT_arm'), eq(parameters.platformGroup, 'all')) }}:
- template: xplat-setup.yml
parameters:
jobTemplate: ${{ parameters.jobTemplate }}
osGroup: Windows_NT
archType: arm
jobParameters:
stagedBuild: ${{ parameters.stagedBuild }}
buildConfig: ${{ parameters.buildConfig }}
managedTestBuildOsGroup: Windows_NT
helixQueues:
# NOTE: there are no queues specified for Windows_NT_arm public with helixQueueGroup='pr'. This means that specifying
# Windows_NT_arm for a PR job causes a build, but no test run. If the test build and test runs were separate jobs,
# this could be more explicit (and less subtle).
- ${{ if and(eq(variables['System.TeamProject'], 'public'), in(parameters.helixQueueGroup, 'ci', 'corefx')) }}:
- Windows.10.Arm64.Open
- ${{ if eq(variables['System.TeamProject'], 'internal') }}:
- Windows.10.Arm64
${{ insert }}: ${{ parameters.jobParameters }}
# Windows arm64
- ${{ if or(containsValue(parameters.platforms, 'Windows_NT_arm64'), eq(parameters.platformGroup, 'all')) }}:
- template: xplat-setup.yml
parameters:
jobTemplate: ${{ parameters.jobTemplate }}
osGroup: Windows_NT
archType: arm64
jobParameters:
stagedBuild: ${{ parameters.stagedBuild }}
buildConfig: ${{ parameters.buildConfig }}
managedTestBuildOsGroup: Windows_NT
helixQueues:
# TODO: Consider adding Windows.10.Arm64.Open here if capacity is enough for handling both Windows_NT/arm and Windows_NT/arm64 testing
- ${{ if eq(variables['System.TeamProject'], 'internal') }}:
- Windows.10.Arm64
${{ insert }}: ${{ parameters.jobParameters }}
parameters:
jobTemplate: ''
osGroup: ''
osSubgroup: ''
archType: ''
container: ''
jobParameters: {}
jobs:
- template: ${{ parameters.jobTemplate }}
parameters:
variables:
- ${{ if eq(parameters.osGroup, 'Windows_NT') }}:
- name: archiveExtension
value: '.zip'
- name: archiveType
value: zip
- name: tarCompression
value: ''
- name: scriptExt
value: '.cmd'
- name: dir
value: '\'
- ${{ if ne(parameters.osGroup, 'Windows_NT') }}:
- name: archiveExtension
value: '.tar.gz'
- name: archiveType
value: tar
- name: tarCompression
value: gz
- name: scriptExt
value: '.sh'
- name: dir
value: '/'
- ${{ if ne(parameters.jobParameters.crossrootfsDir, '') }}:
# This is only required for cross builds.
- name: ROOTFS_DIR
value: ${{ parameters.jobParameters.crossrootfsDir }}
osGroup: ${{ parameters.osGroup }}
osSubgroup: ${{ parameters.osSubgroup }}
archType: ${{ parameters.archType }}
${{ if ne(parameters.container, '') }}:
${{ if eq(parameters.container.registry, 'mcr') }}:
container: ${{ format('{0}:{1}', 'mcr.microsoft.com/dotnet-buildtools/prereqs', parameters.container.image) }}
${{ if ne(parameters.container.registry, 'mcr') }}:
container: ${{ format('{0}:{1}', parameters.container.registry, parameters.container.image) }}
${{ insert }}: ${{ parameters.jobParameters }}
......@@ -32,9 +32,9 @@ jobs:
#
# Debug builds
#
- template: templates/platform-matrix.yml
- template: /eng/pipelines/common/platform-matrix.yml
parameters:
jobTemplate: build-job.yml
jobTemplate: /eng/pipelines/coreclr/templates/build-job.yml
buildConfig: debug
platforms:
- Linux_arm
......@@ -52,9 +52,9 @@ jobs:
#
# Checked builds
#
- template: templates/platform-matrix.yml
- template: /eng/pipelines/common/platform-matrix.yml
parameters:
jobTemplate: build-job.yml
jobTemplate: /eng/pipelines/coreclr/templates/build-job.yml
buildConfig: checked
platformGroup: all
jobParameters:
......@@ -63,9 +63,9 @@ jobs:
#
# Release builds
#
- template: templates/platform-matrix.yml
- template: /eng/pipelines/common/platform-matrix.yml
parameters:
jobTemplate: build-job.yml
jobTemplate: /eng/pipelines/coreclr/templates/build-job.yml
buildConfig: release
platforms:
- Linux_arm
......@@ -79,9 +79,9 @@ jobs:
#
# Checked test builds
#
- template: templates/platform-matrix.yml
- template: /eng/pipelines/common/platform-matrix.yml
parameters:
jobTemplate: build-test-job.yml
jobTemplate: /eng/pipelines/coreclr/templates/build-test-job.yml
buildConfig: checked
platforms:
- Linux_arm
......@@ -97,9 +97,9 @@ jobs:
#
# Checked JIT test runs
#
- template: templates/platform-matrix.yml
- template: /eng/pipelines/common/platform-matrix.yml
parameters:
jobTemplate: run-test-job.yml
jobTemplate: /eng/pipelines/coreclr/templates/run-test-job.yml
buildConfig: checked
platformGroup: all
helixQueueGroup: ci
......@@ -109,9 +109,9 @@ jobs:
#
# Checked R2R test runs
#
- template: templates/platform-matrix.yml
- template: /eng/pipelines/common/platform-matrix.yml
parameters:
jobTemplate: run-test-job.yml
jobTemplate: /eng/pipelines/coreclr/templates/run-test-job.yml
buildConfig: checked
platforms:
- Linux_arm64
......@@ -133,9 +133,9 @@ jobs:
#
# Crossgen-comparison jobs
#
- template: templates/platform-matrix.yml
- template: /eng/pipelines/common/platform-matrix.yml
parameters:
jobTemplate: crossgen-comparison-job.yml
jobTemplate: /eng/pipelines/coreclr/templates/crossgen-comparison-job.yml
buildConfig: release
platforms:
- Linux_arm
......@@ -144,9 +144,9 @@ jobs:
#
# Formatting
#
- template: templates/platform-matrix.yml
- template: /eng/pipelines/common/platform-matrix.yml
parameters:
jobTemplate: format-job.yml
jobTemplate: /eng/pipelines/coreclr/templates/format-job.yml
platforms:
- Linux_x64
- Windows_NT_x64
......@@ -16,9 +16,9 @@ jobs:
#
- template: templates/checkout-job.yml
- template: templates/platform-matrix.yml
- template: /eng/pipelines/common/platform-matrix.yml
parameters:
jobTemplate: build-job.yml
jobTemplate: /eng/pipelines/coreclr/templates/build-job.yml
buildConfig: checked
platforms:
# TODO: add Windows_NT_arm64, when we have hardware available, and .NET Core supports it. Note: platform-matrix.yml needs to enable a Helix queue for this.
......@@ -31,9 +31,9 @@ jobs:
jobParameters:
testGroup: jitstress
- template: templates/platform-matrix.yml
- template: /eng/pipelines/common/platform-matrix.yml
parameters:
jobTemplate: run-test-job.yml
jobTemplate: /eng/pipelines/coreclr/templates/run-test-job.yml
buildConfig: checked
platforms:
# TODO: add Windows_NT_arm64, when we have hardware available, and .NET Core supports it. Note: platform-matrix.yml needs to enable a Helix queue for this.
......
......@@ -16,9 +16,9 @@ jobs:
#
- template: templates/checkout-job.yml
- template: templates/platform-matrix.yml
- template: /eng/pipelines/common/platform-matrix.yml
parameters:
jobTemplate: build-job.yml
jobTemplate: /eng/pipelines/coreclr/templates/build-job.yml
buildConfig: checked
platforms:
# TODO: add Windows_NT_arm64, when we have hardware available, and .NET Core supports it. Note: platform-matrix.yml needs to enable a Helix queue for this.
......@@ -31,9 +31,9 @@ jobs:
jobParameters:
testGroup: jitstress
- template: templates/platform-matrix.yml
- template: /eng/pipelines/common/platform-matrix.yml
parameters:
jobTemplate: run-test-job.yml
jobTemplate: /eng/pipelines/coreclr/templates/run-test-job.yml
buildConfig: checked
platforms:
# TODO: add Windows_NT_arm64, when we have hardware available, and .NET Core supports it. Note: platform-matrix.yml needs to enable a Helix queue for this.
......
......@@ -16,9 +16,9 @@ jobs:
#
- template: templates/checkout-job.yml
- template: templates/platform-matrix.yml
- template: /eng/pipelines/common/platform-matrix.yml
parameters:
jobTemplate: build-job.yml
jobTemplate: /eng/pipelines/coreclr/templates/build-job.yml
buildConfig: checked
platforms:
# TODO: add Windows_NT_arm64, when we have hardware available, and .NET Core supports it. Note: platform-matrix.yml needs to enable a Helix queue for this.
......@@ -31,9 +31,9 @@ jobs:
jobParameters:
testGroup: jitstressregs
- template: templates/platform-matrix.yml
- template: /eng/pipelines/common/platform-matrix.yml
parameters:
jobTemplate: run-test-job.yml
jobTemplate: /eng/pipelines/coreclr/templates/run-test-job.yml
buildConfig: checked
platforms:
# TODO: add Windows_NT_arm64, when we have hardware available, and .NET Core supports it. Note: platform-matrix.yml needs to enable a Helix queue for this.
......
......@@ -16,9 +16,9 @@ jobs:
#
- template: templates/checkout-job.yml
- template: templates/platform-matrix.yml
- template: /eng/pipelines/common/platform-matrix.yml
parameters:
jobTemplate: build-job.yml
jobTemplate: /eng/pipelines/coreclr/templates/build-job.yml
buildConfig: checked
platforms:
# TODO: add Windows_NT_arm64, when we have hardware available, and .NET Core supports it. Note: platform-matrix.yml needs to enable a Helix queue for this.
......@@ -31,9 +31,9 @@ jobs:
jobParameters:
testGroup: outerloop
- template: templates/platform-matrix.yml
- template: /eng/pipelines/common/platform-matrix.yml
parameters:
jobTemplate: run-test-job.yml
jobTemplate: /eng/pipelines/coreclr/templates/run-test-job.yml
buildConfig: checked
platforms:
# TODO: add Windows_NT_arm64, when we have hardware available, and .NET Core supports it. Note: platform-matrix.yml needs to enable a Helix queue for this.
......
......@@ -8,9 +8,9 @@ jobs:
#
- template: templates/checkout-job.yml
- template: templates/platform-matrix.yml
- template: /eng/pipelines/common/platform-matrix.yml
parameters:
jobTemplate: build-job.yml
jobTemplate: /eng/pipelines/coreclr/templates/build-job.yml
buildConfig: checked
platforms:
- Linux_x64
......@@ -19,9 +19,9 @@ jobs:
jobParameters:
testGroup: innerloop
- template: templates/platform-matrix.yml
- template: /eng/pipelines/common/platform-matrix.yml
parameters:
jobTemplate: build-test-job.yml
jobTemplate: /eng/pipelines/coreclr/templates/build-test-job.yml
buildConfig: checked
platforms:
- OSX_x64
......@@ -29,9 +29,9 @@ jobs:
jobParameters:
testGroup: innerloop
- template: templates/platform-matrix.yml
- template: /eng/pipelines/common/platform-matrix.yml
parameters:
jobTemplate: run-test-job.yml
jobTemplate: /eng/pipelines/coreclr/templates/run-test-job.yml
buildConfig: checked
platforms:
- Linux_x64
......
......@@ -16,9 +16,9 @@ jobs:
#
- template: templates/checkout-job.yml
- template: templates/platform-matrix.yml
- template: /eng/pipelines/common/platform-matrix.yml
parameters:
jobTemplate: build-job.yml
jobTemplate: /eng/pipelines/coreclr/templates/build-job.yml
buildConfig: release
platforms:
- Linux_x64
......@@ -28,9 +28,9 @@ jobs:
jobParameters:
testGroup: gc-longrunning
- template: templates/platform-matrix.yml
- template: /eng/pipelines/common/platform-matrix.yml
parameters:
jobTemplate: build-test-job.yml
jobTemplate: /eng/pipelines/coreclr/templates/build-test-job.yml
buildConfig: release
platforms:
- Linux_x64
......@@ -41,9 +41,9 @@ jobs:
jobParameters:
testGroup: gc-longrunning
- template: templates/platform-matrix.yml
- template: /eng/pipelines/common/platform-matrix.yml
parameters:
jobTemplate: run-test-job.yml
jobTemplate: /eng/pipelines/coreclr/templates/run-test-job.yml
buildConfig: release
platforms:
- Linux_x64
......
......@@ -16,9 +16,9 @@ jobs:
#
- template: templates/checkout-job.yml
- template: templates/platform-matrix.yml
- template: /eng/pipelines/common/platform-matrix.yml
parameters:
jobTemplate: build-job.yml
jobTemplate: /eng/pipelines/coreclr/templates/build-job.yml
buildConfig: release
platforms:
# disable Linux x64 for now untill OOMs are resolved.
......@@ -29,9 +29,9 @@ jobs:
jobParameters:
testGroup: gc-simulator
- template: templates/platform-matrix.yml
- template: /eng/pipelines/common/platform-matrix.yml
parameters:
jobTemplate: test-job.yml
jobTemplate: /eng/pipelines/coreclr/templates/test-job.yml
buildConfig: release
platforms:
# disable Linux x64 for now untill OOMs are resolved.
......
......@@ -16,18 +16,18 @@ jobs:
#
- template: templates/checkout-job.yml
- template: templates/platform-matrix.yml
- template: /eng/pipelines/common/platform-matrix.yml
parameters:
jobTemplate: build-job.yml
jobTemplate: /eng/pipelines/coreclr/templates/build-job.yml
buildConfig: checked
platformGroup: gcstress
managedOsxBuild: false
jobParameters:
testGroup: gcstress-extra
- template: templates/platform-matrix.yml
- template: /eng/pipelines/common/platform-matrix.yml
parameters:
jobTemplate: test-job.yml
jobTemplate: /eng/pipelines/coreclr/templates/test-job.yml
buildConfig: checked
platformGroup: gcstress
helixQueueGroup: ci
......
......@@ -16,17 +16,17 @@ jobs:
#
- template: templates/checkout-job.yml
- template: templates/platform-matrix.yml
- template: /eng/pipelines/common/platform-matrix.yml
parameters:
jobTemplate: build-job.yml
jobTemplate: /eng/pipelines/coreclr/templates/build-job.yml
buildConfig: checked
platformGroup: gcstress
jobParameters:
testGroup: gcstress0x3-gcstress0xc
- template: templates/platform-matrix.yml
- template: /eng/pipelines/common/platform-matrix.yml
parameters:
jobTemplate: test-job.yml
jobTemplate: /eng/pipelines/coreclr/templates/test-job.yml
buildConfig: checked
platformGroup: gcstress
helixQueueGroup: ci
......
......@@ -41,9 +41,9 @@ stages:
#
# Release builds
#
- template: templates/platform-matrix.yml
- template: /eng/pipelines/common/platform-matrix.yml
parameters:
jobTemplate: build-job.yml
jobTemplate: /eng/pipelines/coreclr/templates/build-job.yml
buildConfig: release
platformGroup: all
stagedBuild: true
......@@ -91,9 +91,9 @@ stages:
#
# Release test builds
#
- template: templates/platform-matrix.yml
- template: /eng/pipelines/common/platform-matrix.yml
parameters:
jobTemplate: build-test-job.yml
jobTemplate: /eng/pipelines/coreclr/templates/build-test-job.yml
buildConfig: release
platforms:
- Linux_arm
......@@ -112,9 +112,9 @@ stages:
#
# Release JIT test executions
#
- template: templates/platform-matrix.yml
- template: /eng/pipelines/common/platform-matrix.yml
parameters:
jobTemplate: run-test-job.yml
jobTemplate: /eng/pipelines/coreclr/templates/run-test-job.yml
buildConfig: release
platformGroup: all
helixQueueGroup: all
......@@ -126,9 +126,9 @@ stages:
#
# Release R2R test executions
#
- template: templates/platform-matrix.yml
- template: /eng/pipelines/common/platform-matrix.yml
parameters:
jobTemplate: run-test-job.yml
jobTemplate: /eng/pipelines/coreclr/templates/run-test-job.yml
buildConfig: release
platformGroup: all
helixQueueGroup: all
......
......@@ -16,9 +16,9 @@ jobs:
#
- template: templates/checkout-job.yml
- template: templates/platform-matrix.yml
- template: /eng/pipelines/common/platform-matrix.yml
parameters:
jobTemplate: build-job.yml
jobTemplate: /eng/pipelines/coreclr/templates/build-job.yml
buildConfig: checked
platforms:
- Linux_arm64
......@@ -26,9 +26,9 @@ jobs:
jobParameters:
testGroup: jitstress-isas-arm
- template: templates/platform-matrix.yml
- template: /eng/pipelines/common/platform-matrix.yml
parameters:
jobTemplate: test-job.yml
jobTemplate: /eng/pipelines/coreclr/templates/test-job.yml
buildConfig: checked
platforms:
- Linux_arm64
......
......@@ -16,9 +16,9 @@ jobs:
#
- template: templates/checkout-job.yml
- template: templates/platform-matrix.yml
- template: /eng/pipelines/common/platform-matrix.yml
parameters:
jobTemplate: build-job.yml
jobTemplate: /eng/pipelines/coreclr/templates/build-job.yml
buildConfig: checked
platforms:
- Linux_x64
......@@ -28,9 +28,9 @@ jobs:
jobParameters:
testGroup: jitstress-isas-x86
- template: templates/platform-matrix.yml
- template: /eng/pipelines/common/platform-matrix.yml
parameters:
jobTemplate: build-test-job.yml
jobTemplate: /eng/pipelines/coreclr/templates/build-test-job.yml
buildConfig: checked
platforms:
- OSX_x64
......@@ -40,9 +40,9 @@ jobs:
jobParameters:
testGroup: jitstress-isas-x86
- template: templates/platform-matrix.yml
- template: /eng/pipelines/common/platform-matrix.yml
parameters:
jobTemplate: run-test-job.yml
jobTemplate: /eng/pipelines/coreclr/templates/run-test-job.yml
buildConfig: checked
platforms:
- Linux_x64
......
......@@ -16,17 +16,17 @@ jobs:
#
- template: templates/checkout-job.yml
- template: templates/platform-matrix.yml
- template: /eng/pipelines/common/platform-matrix.yml
parameters:
jobTemplate: build-job.yml
jobTemplate: /eng/pipelines/coreclr/templates/build-job.yml
buildConfig: checked
platformGroup: all
jobParameters:
testGroup: jitstress
- template: templates/platform-matrix.yml
- template: /eng/pipelines/common/platform-matrix.yml
parameters:
jobTemplate: test-job.yml
jobTemplate: /eng/pipelines/coreclr/templates/test-job.yml
buildConfig: checked
platformGroup: all
helixQueueGroup: ci
......
......@@ -16,17 +16,17 @@ jobs:
#
- template: templates/checkout-job.yml
- template: templates/platform-matrix.yml
- template: /eng/pipelines/common/platform-matrix.yml
parameters:
jobTemplate: build-job.yml
jobTemplate: /eng/pipelines/coreclr/templates/build-job.yml
buildConfig: checked
platformGroup: all
jobParameters:
testGroup: jitstress2-jitstressregs
- template: templates/platform-matrix.yml
- template: /eng/pipelines/common/platform-matrix.yml
parameters:
jobTemplate: test-job.yml
jobTemplate: /eng/pipelines/coreclr/templates/test-job.yml
buildConfig: checked
platformGroup: all
helixQueueGroup: ci
......
......@@ -16,9 +16,9 @@ jobs:
#
- template: templates/checkout-job.yml
- template: templates/platform-matrix.yml
- template: /eng/pipelines/common/platform-matrix.yml
parameters:
jobTemplate: build-job.yml
jobTemplate: /eng/pipelines/coreclr/templates/build-job.yml
buildConfig: checked
platforms:
- Linux_x64
......@@ -27,9 +27,9 @@ jobs:
jobParameters:
testGroup: jitstressregs-x86
- template: templates/platform-matrix.yml
- template: /eng/pipelines/common/platform-matrix.yml
parameters:
jobTemplate: test-job.yml
jobTemplate: /eng/pipelines/coreclr/templates/test-job.yml
buildConfig: checked
platforms:
- Linux_x64
......
......@@ -16,26 +16,26 @@ jobs:
#
- template: templates/checkout-job.yml
- template: templates/platform-matrix.yml
- template: /eng/pipelines/common/platform-matrix.yml
parameters:
jobTemplate: build-job.yml
jobTemplate: /eng/pipelines/coreclr/templates/build-job.yml
buildConfig: checked
platformGroup: all
jobParameters:
testGroup: jitstressregs
- template: templates/platform-matrix.yml
- template: /eng/pipelines/common/platform-matrix.yml
parameters:
jobTemplate: build-test-job.yml
jobTemplate: /eng/pipelines/coreclr/templates/build-test-job.yml
buildConfig: checked
platformGroup: all
helixQueueGroup: ci
jobParameters:
testGroup: jitstressregs
- template: templates/platform-matrix.yml
- template: /eng/pipelines/common/platform-matrix.yml
parameters:
jobTemplate: run-test-job.yml
jobTemplate: /eng/pipelines/coreclr/templates/run-test-job.yml
buildConfig: checked
platformGroup: all
helixQueueGroup: ci
......
......@@ -30,9 +30,9 @@ jobs:
#
- template: templates/checkout-job.yml
- template: templates/platform-matrix.yml
- template: /eng/pipelines/common/platform-matrix.yml
parameters:
jobTemplate: build-job.yml
jobTemplate: /eng/pipelines/coreclr/templates/build-job.yml
buildConfig: release
platforms:
- Linux_x64
......@@ -41,9 +41,9 @@ jobs:
jobParameters:
testGroup: perf
- template: templates/platform-matrix.yml
- template: /eng/pipelines/common/platform-matrix.yml
parameters:
jobTemplate: perf-job.yml
jobTemplate: /eng/pipelines/coreclr/templates/perf-job.yml
buildConfig: release
platforms:
- Linux_x64
......
......@@ -32,9 +32,9 @@ jobs:
#
# Debug builds
#
- template: templates/platform-matrix.yml
- template: /eng/pipelines/common/platform-matrix.yml
parameters:
jobTemplate: build-job.yml
jobTemplate: /eng/pipelines/coreclr/templates/build-job.yml
buildConfig: debug
platforms:
- Windows_NT_x64
......@@ -45,9 +45,9 @@ jobs:
#
# Checked builds
#
- template: templates/platform-matrix.yml
- template: /eng/pipelines/common/platform-matrix.yml
parameters:
jobTemplate: build-job.yml
jobTemplate: /eng/pipelines/coreclr/templates/build-job.yml
buildConfig: checked
platforms:
- Linux_arm
......@@ -65,9 +65,9 @@ jobs:
#
# Release builds
#
- template: templates/platform-matrix.yml
- template: /eng/pipelines/common/platform-matrix.yml
parameters:
jobTemplate: build-job.yml
jobTemplate: /eng/pipelines/coreclr/templates/build-job.yml
buildConfig: release
platforms:
- Linux_arm64
......@@ -83,9 +83,9 @@ jobs:
#
# Checked test builds
#
- template: templates/platform-matrix.yml
- template: /eng/pipelines/common/platform-matrix.yml
parameters:
jobTemplate: build-test-job.yml
jobTemplate: /eng/pipelines/coreclr/templates/build-test-job.yml
buildConfig: checked
platforms:
- Linux_arm
......@@ -102,9 +102,9 @@ jobs:
#
# Checked JIT test executions
#
- template: templates/platform-matrix.yml
- template: /eng/pipelines/common/platform-matrix.yml
parameters:
jobTemplate: run-test-job.yml
jobTemplate: /eng/pipelines/coreclr/templates/run-test-job.yml
buildConfig: checked
platforms:
- Linux_arm
......@@ -123,9 +123,9 @@ jobs:
#
# Checked R2R test executions
#
- template: templates/platform-matrix.yml
- template: /eng/pipelines/common/platform-matrix.yml
parameters:
jobTemplate: run-test-job.yml
jobTemplate: /eng/pipelines/coreclr/templates/run-test-job.yml
buildConfig: checked
platforms:
- Linux_x64
......@@ -141,9 +141,9 @@ jobs:
#
# CoreFX test runs against CoreCLR
#
- template: templates/platform-matrix.yml
- template: /eng/pipelines/common/platform-matrix.yml
parameters:
jobTemplate: run-test-job.yml
jobTemplate: /eng/pipelines/coreclr/templates/run-test-job.yml
buildConfig: checked
platforms:
- Linux_x64
......@@ -158,9 +158,9 @@ jobs:
#
# Crossgen-comparison jobs
#
- template: templates/platform-matrix.yml
- template: /eng/pipelines/common/platform-matrix.yml
parameters:
jobTemplate: crossgen-comparison-job.yml
jobTemplate: /eng/pipelines/coreclr/templates/crossgen-comparison-job.yml
buildConfig: checked
platforms:
- Linux_arm
......@@ -169,9 +169,9 @@ jobs:
#
# Release test builds
#
- template: templates/platform-matrix.yml
- template: /eng/pipelines/common/platform-matrix.yml
parameters:
jobTemplate: build-test-job.yml
jobTemplate: /eng/pipelines/coreclr/templates/build-test-job.yml
buildConfig: release
platforms:
- OSX_x64
......@@ -182,9 +182,9 @@ jobs:
#
# Release test builds
#
- template: templates/platform-matrix.yml
- template: /eng/pipelines/common/platform-matrix.yml
parameters:
jobTemplate: run-test-job.yml
jobTemplate: /eng/pipelines/coreclr/templates/run-test-job.yml
buildConfig: release
platforms:
- Linux_musl_x64
......@@ -195,9 +195,9 @@ jobs:
#
# Formatting
#
- template: templates/platform-matrix.yml
- template: /eng/pipelines/common/platform-matrix.yml
parameters:
jobTemplate: format-job.yml
jobTemplate: /eng/pipelines/coreclr/templates/format-job.yml
platforms:
- Linux_x64
- Windows_NT_x64
......@@ -16,17 +16,17 @@ jobs:
#
- template: templates/checkout-job.yml
- template: templates/platform-matrix.yml
- template: /eng/pipelines/common/platform-matrix.yml
parameters:
jobTemplate: build-job.yml
jobTemplate: /eng/pipelines/coreclr/templates/build-job.yml
buildConfig: checked
platformGroup: gcstress
jobParameters:
testGroup: r2r-extra
- template: templates/platform-matrix.yml
- template: /eng/pipelines/common/platform-matrix.yml
parameters:
jobTemplate: test-job.yml
jobTemplate: /eng/pipelines/coreclr/templates/test-job.yml
buildConfig: checked
platformGroup: gcstress # r2r-extra testGroup runs gcstress15 scenario
helixQueueGroup: ci
......
......@@ -8,9 +8,9 @@ jobs:
#
- template: templates/checkout-job.yml
- template: templates/platform-matrix.yml
- template: /eng/pipelines/common/platform-matrix.yml
parameters:
jobTemplate: build-job.yml
jobTemplate: /eng/pipelines/coreclr/templates/build-job.yml
buildConfig: checked
platforms:
- Linux_arm
......@@ -21,9 +21,9 @@ jobs:
jobParameters:
testGroup: outerloop
- template: templates/platform-matrix.yml
- template: /eng/pipelines/common/platform-matrix.yml
parameters:
jobTemplate: test-job.yml
jobTemplate: /eng/pipelines/coreclr/templates/test-job.yml
buildConfig: checked
platforms:
- Linux_arm
......
......@@ -16,9 +16,9 @@ jobs:
#
- template: templates/checkout-job.yml
- template: templates/platform-matrix.yml
- template: /eng/pipelines/common/platform-matrix.yml
parameters:
jobTemplate: build-job.yml
jobTemplate: /eng/pipelines/coreclr/templates/build-job.yml
buildConfig: checked
platforms:
- Linux_x64
......@@ -27,9 +27,9 @@ jobs:
jobParameters:
testGroup: outerloop
- template: templates/platform-matrix.yml
- template: /eng/pipelines/common/platform-matrix.yml
parameters:
jobTemplate: test-job.yml
jobTemplate: /eng/pipelines/coreclr/templates/test-job.yml
buildConfig: checked
platforms:
- Linux_x64
......
......@@ -10,6 +10,7 @@ parameters:
signBinaries: false
publishToBlobFeed: false
stagedBuild: false
variables: {}
### Product build
jobs:
......@@ -90,6 +91,8 @@ jobs:
- ${{ if and(eq(parameters.buildConfig, 'Release'), and(eq(parameters.osGroup, 'Windows_NT'), not(or(eq(parameters.archType, 'arm64'), eq(parameters.archType, 'arm'))))) }}:
- name: enforcePgoArg
value: '-enforcepgo'
- ${{ parameters.variables }}
steps:
......
......@@ -8,6 +8,7 @@ parameters:
displayNameArgs: ''
condition: true
stagedBuild: false
variables: {}
### Build managed test components (native components are getting built as part
### of the the product build job).
......@@ -29,6 +30,7 @@ jobs:
container: ${{ parameters.container }}
testGroup: ${{ parameters.testGroup }}
stagedBuild: ${{ parameters.stagedBuild }}
variables: ${{ parameters.variables }}
# Test jobs should continue on error for internal builds
${{ if eq(variables['System.TeamProject'], 'internal') }}:
......
......@@ -7,6 +7,7 @@ parameters:
helixQueues: ''
crossrootfsDir: ''
stagedBuild: false
variables: {}
### Crossgen-comparison job
###
......@@ -53,6 +54,8 @@ jobs:
- name: productDirectory
value: $(binDirectory)\coreclr
- ${{ parameters.variables }}
# Test job depends on the corresponding build job
dependsOn: ${{ format('build_{0}{1}_{2}_{3}', parameters.osGroup, parameters.osSubgroup, parameters.archType, parameters.buildConfig) }}
......
......@@ -7,6 +7,7 @@ parameters:
crossrootfsDir: ''
timeoutInMinutes: ''
stagedBuild: false
variables: {}
### Format job
jobs:
......@@ -23,6 +24,7 @@ jobs:
name: ${{ format('format_{0}{1}_{2}', parameters.osGroup, parameters.osSubgroup, parameters.archType) }}
displayName: ${{ format('Formatting {0}{1} {2}', parameters.osGroup, parameters.osSubgroup, parameters.archType) }}
helixType: 'format'
variables: ${{ parameters.variables }}
steps:
- task: UseDotNet@2
# This should match what jitutils YML uses to build.
......
......@@ -5,6 +5,7 @@ parameters:
osSubgroup: ''
container: ''
framework: netcoreapp5.0 # Specify the appropriate framework when running release branches (ie netcoreapp3.0 for release/3.0)
variables: {}
### Perf job
......@@ -32,12 +33,13 @@ jobs:
osSubgroup: ${{ parameters.osSubgroup }}
# Test job depends on the corresponding build job
dependsOn: ${{ format('build_{0}{1}_{2}_{3}', parameters.osGroup, parameters.osSubgroup, parameters.archType, parameters.buildConfig) }}
${{ if eq(parameters.osGroup, 'Windows_NT') }}:
extraSetupParameters: -CoreRootDirectory $(Build.SourcesDirectory)\artifacts\tests\coreclr\${{ parameters.osGroup }}.${{ parameters.archType }}.Release\Tests\Core_Root -Architecture ${{ parameters.archType }}
${{ if ne(parameters.osGroup, 'Windows_NT') }}:
extraSetupParameters: --corerootdirectory $(Build.SourcesDirectory)/artifacts/tests/coreclr/${{ parameters.osGroup }}.${{ parameters.archType }}.Release/Tests/Core_Root --architecture ${{ parameters.archType }}
variables: ${{ parameters.variables }}
frameworks:
- ${{ parameters.framework }}
steps:
......
parameters:
jobTemplate: ''
buildConfig: ''
platforms: []
# platformGroup is a named collection of platforms. Allowed values:
# 'all' - all platforms
# 'gcstress' - platforms that support running under GCStress0x3 and GCStress0xC scenarios
platformGroup: ''
# helixQueueGroup is a named collection of Helix Queues. If specified, it determines which Helix queues are
# used, instead of the usual criteria. Allowed values:
# 'pr' - the queues used for a pull request for the platform. Typically a small set.
# 'ci' - the queues used for a CI (post-merge) test run.
# 'all' - the queues used for non-PR, non-CI test runs, e.g., Manual or Scheduled runs. Typically this is all available queues.
# 'corefx' - the queues used for a corefx test run.
helixQueueGroup: 'pr'
stagedBuild: false
# When set to false, suppresses reuse of OSX managed build artifacts (for pipelines without an OSX obj)
managedOsxBuild: true
jobParameters: {}
jobs:
# Linux arm
- ${{ if or(containsValue(parameters.platforms, 'Linux_arm'), in(parameters.platformGroup, 'all', 'gcstress')) }}:
- template: ${{ parameters.jobTemplate }}
parameters:
stagedBuild: ${{ parameters.stagedBuild }}
buildConfig: ${{ parameters.buildConfig }}
archType: arm
osGroup: Linux
managedTestBuildOsGroup: Linux
container:
image: ubuntu-16.04-cross-14.04-23cacb0-20191023143847
registry: mcr
helixQueues:
- ${{ if eq(variables['System.TeamProject'], 'public') }}:
- (Ubuntu.1804.Arm32.Open)Ubuntu.1804.Armarch.Open@mcr.microsoft.com/dotnet-buildtools/prereqs:ubuntu-18.04-helix-arm32v7-30f6673-20190814153226
- ${{ if eq(variables['System.TeamProject'], 'internal') }}:
- (Debian.9.Arm32)Ubuntu.1804.Armarch@mcr.microsoft.com/dotnet-buildtools/prereqs:debian-9-helix-arm32v7-74c9941-20190620155841
- (Ubuntu.1804.Arm32)Ubuntu.1804.Armarch@mcr.microsoft.com/dotnet-buildtools/prereqs:ubuntu-18.04-helix-arm32v7-30f6673-20190814153226
crossrootfsDir: '/crossrootfs/arm'
${{ insert }}: ${{ parameters.jobParameters }}
# Linux arm64
- ${{ if or(containsValue(parameters.platforms, 'Linux_arm64'), in(parameters.platformGroup, 'all', 'gcstress')) }}:
- template: ${{ parameters.jobTemplate }}
parameters:
stagedBuild: ${{ parameters.stagedBuild }}
buildConfig: ${{ parameters.buildConfig }}
archType: arm64
osGroup: Linux
managedTestBuildOsGroup: Linux
container:
image: ubuntu-16.04-cross-arm64-cfdd435-20191023143847
registry: mcr
helixQueues:
- ${{ if eq(variables['System.TeamProject'], 'public') }}:
- (Ubuntu.1804.Arm64.Open)Ubuntu.1804.Armarch.Open@mcr.microsoft.com/dotnet-buildtools/prereqs:ubuntu-18.04-helix-arm64v8-a45aeeb-20190620155855
- ${{ if and(eq(variables['System.TeamProject'], 'public'), notIn(parameters.helixQueueGroup, 'pr', 'ci', 'corefx')) }}:
- (Debian.9.Arm64.Open)Ubuntu.1804.Armarch.Open@mcr.microsoft.com/dotnet-buildtools/prereqs:debian-9-helix-arm64v8-74c9941-20190620155840
- ${{ if eq(variables['System.TeamProject'], 'internal') }}:
- (Debian.9.Arm64)Ubuntu.1804.ArmArch@mcr.microsoft.com/dotnet-buildtools/prereqs:debian-9-helix-arm64v8-74c9941-20190620155840
- (Ubuntu.1804.Arm64)Ubuntu.1804.ArmArch@mcr.microsoft.com/dotnet-buildtools/prereqs:ubuntu-18.04-helix-arm64v8-a45aeeb-20190620155855
crossrootfsDir: '/crossrootfs/arm64'
${{ insert }}: ${{ parameters.jobParameters }}
# Linux musl x64
- ${{ if or(containsValue(parameters.platforms, 'Linux_musl_x64'), eq(parameters.platformGroup, 'all')) }}:
- template: ${{ parameters.jobTemplate }}
parameters:
stagedBuild: ${{ parameters.stagedBuild }}
buildConfig: ${{ parameters.buildConfig }}
archType: x64
osGroup: Linux
osSubgroup: _musl
${{ if ne(parameters.managedOsxBuild, true) }}:
managedTestBuildOsGroup: Linux
managedTestBuildOsSubgroup: _musl
${{ if eq(parameters.managedOsxBuild, true) }}:
managedTestBuildOsGroup: OSX
container:
image: alpine-3.9-WithNode-0fc54a3-20190918214015
registry: mcr
helixQueues:
- ${{ if eq(variables['System.TeamProject'], 'public') }}:
- (Alpine.310.Amd64.Open)Ubuntu.1604.Amd64.Open@mcr.microsoft.com/dotnet-buildtools/prereqs:alpine-3.10-helix-3043688-20190918214010
- ${{ if eq(variables['System.TeamProject'], 'internal') }}:
- (Alpine.38.Amd64)ubuntu.1604.amd64@mcr.microsoft.com/dotnet-buildtools/prereqs:alpine-3.8-helix-09ca40b-20190508143246
- (Alpine.39.Amd64)ubuntu.1604.amd64@mcr.microsoft.com/dotnet-buildtools/prereqs:alpine-3.9-helix-09ca40b-20190508143246
- (Alpine.310.Amd64)ubuntu.1604.amd64@mcr.microsoft.com/dotnet-buildtools/prereqs:alpine-3.10-helix-3043688-20190918214010
${{ insert }}: ${{ parameters.jobParameters }}
# Linux musl arm64
- ${{ if or(containsValue(parameters.platforms, 'Linux_musl_arm64'), eq(parameters.platformGroup, 'all')) }}:
- template: ${{ parameters.jobTemplate }}
parameters:
stagedBuild: ${{ parameters.stagedBuild }}
buildConfig: ${{ parameters.buildConfig }}
archType: arm64
osGroup: Linux
osSubgroup: _musl
managedTestBuildOsGroup: Linux
container:
image: ubuntu-16.04-cross-arm64-alpine-406629a-20191023143847
registry: mcr
helixQueues:
- ${{ if eq(variables['System.TeamProject'], 'public') }}:
- (Alpine.38.Arm64.Open)Ubuntu.1804.ArmArch.Open@mcr.microsoft.com/dotnet-buildtools/prereqs:alpine-3.8-helix-arm64v8-a45aeeb-20190620184035
- ${{ if eq(variables['System.TeamProject'], 'internal') }}:
- (Alpine.38.Arm64)Ubuntu.1804.ArmArch@mcr.microsoft.com/dotnet-buildtools/prereqs:alpine-3.8-helix-arm64v8-a45aeeb-20190620184035
crossrootfsDir: '/crossrootfs/arm64'
${{ insert }}: ${{ parameters.jobParameters }}
# Linux rhel6 x64
- ${{ if or(containsValue(parameters.platforms, 'Linux_rhel6_x64'), eq(parameters.platformGroup, 'all')) }}:
- template: ${{ parameters.jobTemplate }}
parameters:
stagedBuild: ${{ parameters.stagedBuild }}
buildConfig: ${{ parameters.buildConfig }}
archType: x64
osGroup: Linux
osSubgroup: _rhel6
${{ if ne(parameters.managedOsxBuild, true) }}:
managedTestBuildOsGroup: Linux_rhel
${{ if eq(parameters.managedOsxBuild, true) }}:
managedTestBuildOsGroup: OSX
container:
image: centos-6-f39df28-20191023143802
registry: mcr
helixQueues:
# TODO: enable RedHat.6.Amd64.Open once https://github.com/dotnet/coreclr/issues/23580 is resolved
- ${{ if eq(variables['System.TeamProject'], 'internal') }}:
- RedHat.6.Amd64
${{ insert }}: ${{ parameters.jobParameters }}
# Linux x64
- ${{ if or(containsValue(parameters.platforms, 'Linux_x64'), in(parameters.platformGroup, 'all', 'gcstress')) }}:
- template: ${{ parameters.jobTemplate }}
parameters:
stagedBuild: ${{ parameters.stagedBuild }}
buildConfig: ${{ parameters.buildConfig }}
archType: x64
osGroup: Linux
${{ if ne(parameters.managedOsxBuild, true) }}:
managedTestBuildOsGroup: Linux
${{ if eq(parameters.managedOsxBuild, true) }}:
managedTestBuildOsGroup: OSX
container:
image: centos-7-f39df28-20191023143754
registry: mcr
helixQueues:
- ${{ if and(eq(variables['System.TeamProject'], 'public'), in(parameters.helixQueueGroup, 'pr', 'ci', 'corefx')) }}:
- Ubuntu.1804.Amd64.Open
- ${{ if and(eq(variables['System.TeamProject'], 'public'), notIn(parameters.helixQueueGroup, 'pr', 'ci', 'corefx')) }}:
- Debian.9.Amd64.Open
- Ubuntu.1604.Amd64.Open
- Ubuntu.1804.Amd64.Open
- Centos.7.Amd64.Open
- RedHat.7.Amd64.Open
- ${{ if eq(variables['System.TeamProject'], 'internal') }}:
- Debian.9.Amd64
- Ubuntu.1604.Amd64
- Ubuntu.1804.Amd64
- Centos.7.Amd64
- (Fedora.28.Amd64)Ubuntu.1604.amd64@mcr.microsoft.com/dotnet-buildtools/prereqs:fedora-28-helix-09ca40b-20190508143249
- RedHat.7.Amd64
${{ insert }}: ${{ parameters.jobParameters }}
# FreeBSD
# FreeBSD machines are currenrly offline. Re-enable in the official build when
# the machines are healthy.
# - template: ${{ parameters.jobTemplate }}
# parameters:
# buildConfig: ${{ parameters.buildConfig }}
# archType: x64
# osGroup: FreeBSD
# # There are no FreeBSD helix queues, so we don't run tests at the moment.
# helixQueues:
# asString: ''
# asArray: []
# ${{ insert }}: ${{ parameters.jobParameters }}
# macOS x64
- ${{ if or(containsValue(parameters.platforms, 'OSX_x64'), eq(parameters.platformGroup, 'all')) }}:
- template: ${{ parameters.jobTemplate }}
parameters:
stagedBuild: ${{ parameters.stagedBuild }}
buildConfig: ${{ parameters.buildConfig }}
archType: x64
osGroup: OSX
managedTestBuildOsGroup: OSX
helixQueues:
- ${{ if and(eq(variables['System.TeamProject'], 'public'), in(parameters.helixQueueGroup, 'pr', 'ci', 'corefx')) }}:
- OSX.1013.Amd64.Open
- ${{ if and(eq(variables['System.TeamProject'], 'public'), notIn(parameters.helixQueueGroup, 'pr', 'ci', 'corefx')) }}:
- OSX.1013.Amd64.Open
- OSX.1014.Amd64.Open
- ${{ if eq(variables['System.TeamProject'], 'internal') }}:
- OSX.1013.Amd64
- OSX.1014.Amd64
${{ insert }}: ${{ parameters.jobParameters }}
# Windows x64
- ${{ if or(containsValue(parameters.platforms, 'Windows_NT_x64'), in(parameters.platformGroup, 'all', 'gcstress')) }}:
- template: ${{ parameters.jobTemplate }}
parameters:
stagedBuild: ${{ parameters.stagedBuild }}
buildConfig: ${{ parameters.buildConfig }}
archType: x64
osGroup: Windows_NT
managedTestBuildOsGroup: Windows_NT
helixQueues:
- ${{ if and(eq(variables['System.TeamProject'], 'public'), in(parameters.helixQueueGroup, 'pr', 'ci', 'corefx')) }}:
- Windows.10.Amd64.Open
- ${{ if and(eq(variables['System.TeamProject'], 'public'), notIn(parameters.helixQueueGroup, 'pr', 'ci', 'corefx')) }}:
# TODO: add Windows.10.Nano.Amd64.Open once https://github.com/dotnet/coreclr/issues/21693 has been resolved
- Windows.7.Amd64.Open
- Windows.81.Amd64.Open
- Windows.10.Amd64.Open
- ${{ if eq(variables['System.TeamProject'], 'internal') }}:
- Windows.7.Amd64
- Windows.81.Amd64
- Windows.10.Amd64
- Windows.10.Amd64.Core
- (Windows.Nano.1803.Amd64)windows.10.amd64.serverrs4@mcr.microsoft.com/dotnet-buildtools/prereqs:nanoserver-1803-helix-amd64-05227e1-20190509225944
${{ insert }}: ${{ parameters.jobParameters }}
# Windows x86
- ${{ if or(containsValue(parameters.platforms, 'Windows_NT_x86'), in(parameters.platformGroup, 'all', 'gcstress')) }}:
- template: ${{ parameters.jobTemplate }}
parameters:
stagedBuild: ${{ parameters.stagedBuild }}
buildConfig: ${{ parameters.buildConfig }}
archType: x86
osGroup: Windows_NT
managedTestBuildOsGroup: Windows_NT
helixQueues:
- ${{ if and(eq(variables['System.TeamProject'], 'public'), in(parameters.helixQueueGroup, 'pr', 'ci', 'corefx')) }}:
- Windows.10.Amd64.Open
- ${{ if and(eq(variables['System.TeamProject'], 'public'), notIn(parameters.helixQueueGroup, 'pr', 'ci', 'corefx')) }}:
- Windows.7.Amd64.Open
- Windows.81.Amd64.Open
- Windows.10.Amd64.Open
- ${{ if eq(variables['System.TeamProject'], 'internal') }}:
- Windows.7.Amd64
- Windows.81.Amd64
- Windows.10.Amd64
- Windows.10.Amd64.Core
${{ insert }}: ${{ parameters.jobParameters }}
# Windows arm
- ${{ if or(containsValue(parameters.platforms, 'Windows_NT_arm'), eq(parameters.platformGroup, 'all')) }}:
- template: ${{ parameters.jobTemplate }}
parameters:
stagedBuild: ${{ parameters.stagedBuild }}
buildConfig: ${{ parameters.buildConfig }}
archType: arm
osGroup: Windows_NT
managedTestBuildOsGroup: Windows_NT
helixQueues:
# NOTE: there are no queues specified for Windows_NT_arm public with helixQueueGroup='pr'. This means that specifying
# Windows_NT_arm for a PR job causes a build, but no test run. If the test build and test runs were separate jobs,
# this could be more explicit (and less subtle).
- ${{ if and(eq(variables['System.TeamProject'], 'public'), in(parameters.helixQueueGroup, 'ci', 'corefx')) }}:
- Windows.10.Arm64.Open
- ${{ if eq(variables['System.TeamProject'], 'internal') }}:
- Windows.10.Arm64
${{ insert }}: ${{ parameters.jobParameters }}
# Windows arm64
- ${{ if or(containsValue(parameters.platforms, 'Windows_NT_arm64'), eq(parameters.platformGroup, 'all')) }}:
- template: ${{ parameters.jobTemplate }}
parameters:
stagedBuild: ${{ parameters.stagedBuild }}
buildConfig: ${{ parameters.buildConfig }}
archType: arm64
osGroup: Windows_NT
managedTestBuildOsGroup: Windows_NT
helixQueues:
# TODO: Consider adding Windows.10.Arm64.Open here if capacity is enough for handling both Windows_NT/arm and Windows_NT/arm64 testing
- ${{ if eq(variables['System.TeamProject'], 'internal') }}:
- Windows.10.Arm64
${{ insert }}: ${{ parameters.jobParameters }}
......@@ -16,6 +16,7 @@ parameters:
stagedBuild: false
displayNameArgs: ''
runInUnloadableContext: false
variables: {}
### Test run job
......@@ -85,6 +86,8 @@ jobs:
- ${{ if eq(variables['System.TeamProject'], 'internal') }}:
- group: DotNet-HelixApi-Access
- ${{ parameters.variables }}
# TODO: update these numbers as they were determined long ago
${{ if eq(parameters.testGroup, 'innerloop') }}:
......
......@@ -16,6 +16,7 @@ parameters:
runInUnloadableContext: false
condition: true
stagedBuild: false
variables: {}
### Test job
......@@ -24,7 +25,7 @@ parameters:
jobs:
- ${{ if and(ne(parameters.corefxTests, true), eq(parameters.osSubgroup, parameters.managedTestBuildOsSubgroup), eq(parameters.osGroup, parameters.managedTestBuildOsGroup)) }}:
- template: build-test-job.yml
- template: /eng/pipelines/coreclr/templates/build-test-job.yml
parameters:
buildConfig: ${{ parameters.buildConfig }}
archType: ${{ parameters.archType }}
......@@ -35,8 +36,9 @@ jobs:
displayNameArgs: ${{ parameters.displayNameArgs }}
condition: ${{ parameters.condition }}
stagedBuild: ${{ parameters.stagedBuild }}
variables: ${{ parameters.variables }}
- template: run-test-job.yml
- template: /eng/pipelines/coreclr/templates/run-test-job.yml
parameters:
buildConfig: ${{ parameters.buildConfig }}
archType: ${{ parameters.archType }}
......@@ -53,3 +55,4 @@ jobs:
displayNameArgs: ${{ parameters.displayNameArgs }}
stagedBuild: ${{ parameters.stagedBuild }}
runInUnloadableContext: ${{ parameters.runInUnloadableContext }}
variables: ${{ parameters.variables }}
......@@ -27,7 +27,7 @@ jobs:
name: ${{ parameters.name }}
displayName: ${{ parameters.displayName }}
container: ${{ parameters.container }}
condition: ${{ parameters.condition }}
dependsOn:
- ${{ if ne(parameters.stagedBuild, true) }}:
......@@ -88,12 +88,6 @@ jobs:
workspace:
clean: all
${{ if ne(parameters.container, '') }}:
${{ if eq(parameters.container.registry, 'mcr') }}:
container: ${{ format('{0}:{1}', 'mcr.microsoft.com/dotnet-buildtools/prereqs', parameters.container.image) }}
${{ if ne(parameters.container.registry, 'mcr') }}:
container: ${{ format('{0}:{1}', parameters.container.registry, parameters.container.image) }}
${{ if eq(parameters.osGroup, 'Linux') }}:
agentOs: Ubuntu
${{ if eq(parameters.osGroup, 'FreeBSD') }}:
......@@ -151,9 +145,6 @@ jobs:
value: 'cross'
- name: crossPackagesArg
value: '-__DoCrossArchBuild=1'
# This is only required for cross builds.
- name: ROOTFS_DIR
value: ${{ parameters.crossrootfsDir }}
- ${{ if eq(parameters.crossrootfsDir, '') }}:
- name: crossArg
value: ''
......
......@@ -57,30 +57,6 @@ jobs:
- name: testArtifactRootName
value: ${{ parameters.managedTestBuildOsGroup }}${{ parameters.managedTestBuildOsSubgroup }}_${{ parameters.archType }}_${{ parameters.buildConfig }}
- ${{ if eq(parameters.osGroup, 'Windows_NT') }}:
- name: archiveExtension
value: '.zip'
- name: archiveType
value: zip
- name: tarCompression
value: ''
- name: scriptExt
value: '.cmd'
- name: dir
value: '\'
- ${{ if ne(parameters.osGroup, 'Windows_NT') }}:
- name: archiveExtension
value: '.tar.gz'
- name: archiveType
value: tar
- name: tarCompression
value: gz
- name: scriptExt
value: '.sh'
- name: dir
value: '/'
- name: coreClrRepoRoot
value: '$(Build.SourcesDirectory)/src/coreclr'
......
......@@ -12,6 +12,7 @@ trigger:
- src/libraries/*
- eng/pipelines/coreclr/*
- eng/pipelines/libraries/*
- eng/pipelines/common/*
- docs/*
- README.md
- CONTRIBUTING.md
......
......@@ -22,6 +22,7 @@ trigger:
- src/coreclr/*
- eng/pipelines/coreclr/*
- eng/pipelines/installer/*
- eng/pipelines/common/*
pr:
branches:
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册