Merge pull request #14150 from dotnet/marcpopMSFT-streamlineprmatrix

Simplify our PR builds.
This commit is contained in:
Marc Paine 2022-07-27 10:17:19 -07:00 committed by GitHub
commit c7a13ea04c
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -71,77 +71,66 @@ stages:
matrix: matrix:
# Public-only builds # Public-only builds
${{ if or(eq(variables['System.TeamProject'], 'public'), in(variables['Build.Reason'], 'PullRequest')) }}: ${{ if or(eq(variables['System.TeamProject'], 'public'), in(variables['Build.Reason'], 'PullRequest')) }}:
Build_Debug_x86: Build_Release_x64:
_BuildConfig: Debug _BuildConfig: Debug
_BuildArchitecture: x86 _BuildArchitecture: x64
_DOTNET_CLI_UI_LANGUAGE: '' _DOTNET_CLI_UI_LANGUAGE: ''
_AdditionalBuildParameters: '' _AdditionalBuildParameters: '/p:PublishInternalAsset=true'
_TestArg: $(_WindowsTestArg) _TestArg: $(_WindowsTestArg)
# Internal-only builds # Internal-only builds
${{ if and(ne(variables['System.TeamProject'], 'public'), notin(variables['Build.Reason'], 'PullRequest')) }}: ${{ if and(ne(variables['System.TeamProject'], 'public'), notin(variables['Build.Reason'], 'PullRequest')) }}:
Build_Release_x64:
_BuildConfig: Release
_BuildArchitecture: x64
_DOTNET_CLI_UI_LANGUAGE: ''
_AdditionalBuildParameters: '/p:PublishInternalAsset=true'
_TestArg: $(_WindowsTestArg)
Build_Release_x86: Build_Release_x86:
_BuildConfig: Release _BuildConfig: Release
_BuildArchitecture: x86 _BuildArchitecture: x86
_DOTNET_CLI_UI_LANGUAGE: '' _DOTNET_CLI_UI_LANGUAGE: ''
_AdditionalBuildParameters: '' _AdditionalBuildParameters: ''
_TestArg: $(_WindowsTestArg) _TestArg: $(_WindowsTestArg)
# Always run builds Build_Release_arm64:
Build_Release_x64: _BuildConfig: Release
_BuildConfig: Release _BuildArchitecture: arm64
_BuildArchitecture: x64 _DOTNET_CLI_UI_LANGUAGE: ''
_DOTNET_CLI_UI_LANGUAGE: '' _AdditionalBuildParameters: ''
_AdditionalBuildParameters: '/p:PublishInternalAsset=true' # Never run tests on arm64
_TestArg: $(_WindowsTestArg) _TestArg: ''
Build_Release_arm:
_BuildConfig: Release
_BuildArchitecture: arm
_DOTNET_CLI_UI_LANGUAGE: ''
_AdditionalBuildParameters: ''
# Never run tests on arm64
_TestArg: ''
Build_Release_arm64:
_BuildConfig: Release
_BuildArchitecture: arm64
_DOTNET_CLI_UI_LANGUAGE: ''
_AdditionalBuildParameters: ''
# Never run tests on arm64
_TestArg: ''
- template: /eng/build.yml - ${{ if and(ne(variables['System.TeamProject'], 'public'), notin(variables['Build.Reason'], 'PullRequest')) }}:
parameters: - template: /eng/build.yml
agentOs: Windows_NT parameters:
pool: agentOs: Windows_NT
${{ if eq(variables['System.TeamProject'], 'public') }}: pool:
name: NetCore1ESPool-Public ${{ if eq(variables['System.TeamProject'], 'internal') }}:
demands: ImageOverride -equals build.windows.10.amd64.vs2019.open name: NetCore1ESPool-Internal
${{ if eq(variables['System.TeamProject'], 'internal') }}: demands: ImageOverride -equals build.windows.10.amd64.vs2019
name: NetCore1ESPool-Internal timeoutInMinutes: 180
demands: ImageOverride -equals build.windows.10.amd64.vs2019 strategy:
timeoutInMinutes: 180 matrix:
strategy: Build_Release_x64:
matrix: _BuildConfig: Release
# Always run builds _BuildArchitecture: x64
Build_Release_x64: _DOTNET_CLI_UI_LANGUAGE: ''
_BuildConfig: Release _AdditionalBuildParameters: '/p:PublishInternalAsset=true'
_BuildArchitecture: x64 # Never run tests on PGO bits
_DOTNET_CLI_UI_LANGUAGE: '' _TestArg: ''
_AdditionalBuildParameters: '/p:PublishInternalAsset=true' Build_Release_x86:
# Never run tests on PGO bits _BuildConfig: Release
_TestArg: '' _BuildArchitecture: x86
Build_Release_x86: _DOTNET_CLI_UI_LANGUAGE: ''
_BuildConfig: Release _AdditionalBuildParameters: ''
_BuildArchitecture: x86 _TestArg: ''
_DOTNET_CLI_UI_LANGUAGE: '' Build_Release_arm64:
_AdditionalBuildParameters: '' _BuildConfig: Release
_TestArg: '' _BuildArchitecture: arm64
Build_Release_arm64: _DOTNET_CLI_UI_LANGUAGE: ''
_BuildConfig: Release _AdditionalBuildParameters: ''
_BuildArchitecture: arm64 # Never run tests on arm64
_DOTNET_CLI_UI_LANGUAGE: '' _TestArg: ''
_AdditionalBuildParameters: '' pgoInstrument: true
# Never run tests on arm64
_TestArg: ''
pgoInstrument: true
- template: /eng/build.yml - template: /eng/build.yml
parameters: parameters:
@ -186,30 +175,6 @@ stages:
_BuildArchitecture: 'x64' _BuildArchitecture: 'x64'
_AdditionalBuildParameters: '/p:BuildSdkDeb=true' _AdditionalBuildParameters: '/p:BuildSdkDeb=true'
_TestArg: $(_NonWindowsTestArg) _TestArg: $(_NonWindowsTestArg)
Build_Rhel_7_2_Release_x64:
_BuildConfig: Release
_DockerParameter: '--docker centos'
_LinuxPortable: ''
_RuntimeIdentifier: ''
_BuildArchitecture: 'x64'
_TestArg: $(_NonWindowsTestArg)
Build_Rhel_7_2_Release_Arm64:
_BuildConfig: Release
_DockerParameter: '--docker centos'
_LinuxPortable: ''
_RuntimeIdentifier: '--runtime-id linux-arm64'
_BuildArchitecture: 'arm64'
# Never run tests on arm
_TestArg: ''
_AdditionalBuildParameters: '/p:CLIBUILD_SKIP_TESTS=true'
Build_Arm_Debug:
_BuildConfig: Debug
_DockerParameter: ''
_LinuxPortable: '--linux-portable'
_RuntimeIdentifier: '--runtime-id linux-arm'
_BuildArchitecture: 'arm'
# Never run tests on arm
_TestArg: ''
Build_Arm64_Debug: Build_Arm64_Debug:
_BuildConfig: Debug _BuildConfig: Debug
_DockerParameter: '' _DockerParameter: ''
@ -218,25 +183,6 @@ stages:
_BuildArchitecture: 'arm64' _BuildArchitecture: 'arm64'
# Never run tests on arm64 # Never run tests on arm64
_TestArg: '' _TestArg: ''
Build_Linux_musl_Debug_arm:
_BuildConfig: Debug
# linux-musl-arm cross gen depends on glibc 2.27 (this OS has it)
_DockerParameter: '--docker ubuntu.18.04'
_LinuxPortable: ''
_RuntimeIdentifier: '--runtime-id linux-musl-arm'
_BuildArchitecture: 'arm'
_AdditionalBuildParameters: '/p:OSName="linux-musl"'
# Never run tests on arm
_TestArg: ''
Build_Linux_musl_Debug_arm64:
_BuildConfig: Debug
_DockerParameter: ''
_LinuxPortable: ''
_RuntimeIdentifier: '--runtime-id linux-musl-arm64'
_BuildArchitecture: 'arm64'
_AdditionalBuildParameters: '/p:OSName="linux-musl"'
# Never run tests on arm64
_TestArg: ''
Build_Linux_musl_Debug_x64: Build_Linux_musl_Debug_x64:
_BuildConfig: Debug _BuildConfig: Debug
_DockerParameter: '--docker alpine.3.15' _DockerParameter: '--docker alpine.3.15'
@ -329,35 +275,32 @@ stages:
_BuildArchitecture: 'x64' _BuildArchitecture: 'x64'
_TestArg: $(_NonWindowsTestArg) _TestArg: $(_NonWindowsTestArg)
- template: /eng/build.yml - ${{ if and(ne(variables['System.TeamProject'], 'public'), notin(variables['Build.Reason'], 'PullRequest')) }}:
parameters: - template: /eng/build.yml
agentOs: Linux parameters:
pool: agentOs: Linux
${{ if eq(variables['System.TeamProject'], 'public') }}: pool:
name: NetCore1ESPool-Public ${{ if eq(variables['System.TeamProject'], 'internal') }}:
demands: ImageOverride -equals Build.Ubuntu.1804.Amd64.Open name: NetCore1ESPool-Internal
${{ if eq(variables['System.TeamProject'], 'internal') }}: demands: ImageOverride -equals Build.Ubuntu.1804.Amd64
name: NetCore1ESPool-Internal timeoutInMinutes: 180
demands: ImageOverride -equals Build.Ubuntu.1804.Amd64 strategy:
timeoutInMinutes: 180 matrix:
strategy: Build_LinuxPortable_Release_x64:
matrix: _BuildConfig: Release
# Always run builds _DockerParameter: ''
Build_LinuxPortable_Release_x64: _LinuxPortable: '--linux-portable'
_BuildConfig: Release _RuntimeIdentifier: ''
_DockerParameter: '' _BuildArchitecture: 'x64'
_LinuxPortable: '--linux-portable' _TestArg: ''
_RuntimeIdentifier: '' Build_Release_arm64:
_BuildArchitecture: 'x64' _BuildConfig: Release
_TestArg: '' _BuildArchitecture: arm64
Build_Release_arm64: _DOTNET_CLI_UI_LANGUAGE: ''
_BuildConfig: Release _AdditionalBuildParameters: ''
_BuildArchitecture: arm64 # Never run tests on arm64
_DOTNET_CLI_UI_LANGUAGE: '' _TestArg: ''
_AdditionalBuildParameters: '' pgoInstrument: true
# Never run tests on arm64
_TestArg: ''
pgoInstrument: true
- template: /eng/build.yml - template: /eng/build.yml
parameters: parameters:
@ -372,12 +315,13 @@ stages:
_RuntimeIdentifier: '' _RuntimeIdentifier: ''
_BuildArchitecture: 'x64' _BuildArchitecture: 'x64'
_TestArg: $(_NonWindowsTestArg) _TestArg: $(_NonWindowsTestArg)
Build_Release_arm64: ${{ if and(ne(variables['System.TeamProject'], 'public'), notin(variables['Build.Reason'], 'PullRequest')) }}:
_BuildConfig: Release Build_Release_arm64:
_RuntimeIdentifier: '--runtime-id osx-arm64' _BuildConfig: Release
_BuildArchitecture: 'arm64' _RuntimeIdentifier: '--runtime-id osx-arm64'
# Never run tests on arm64 _BuildArchitecture: 'arm64'
_TestArg: '' # Never run tests on arm64
_TestArg: ''
- template: /eng/common/templates/jobs/source-build.yml - template: /eng/common/templates/jobs/source-build.yml