From d2685d5c237ba0e4d16f94b3e918c627c5f26dbd Mon Sep 17 00:00:00 2001 From: =?utf8?q?Tom=C3=A1=C5=A1=20Rylek?= Date: Mon, 9 Dec 2019 18:53:14 +0100 Subject: [PATCH] Add new YAML template for combined build of CoreCLR and libraries (#626) As a common idiom in many live-live CoreCLR pipelines, we need libraries to build a platform matrix equivalent to the CoreCLR testing matrix. I have created a new template to capture that idiom. I have initially switched over the Crossgen2 pipeline to use it. Thanks Tomas --- .../common/build-coreclr-and-libraries-job.yml | 51 ++++++++++++++++++++++ eng/pipelines/coreclr/crossgen2.yml | 4 +- 2 files changed, 54 insertions(+), 1 deletion(-) create mode 100644 eng/pipelines/common/build-coreclr-and-libraries-job.yml diff --git a/eng/pipelines/common/build-coreclr-and-libraries-job.yml b/eng/pipelines/common/build-coreclr-and-libraries-job.yml new file mode 100644 index 0000000..8eb2cdd --- /dev/null +++ b/eng/pipelines/common/build-coreclr-and-libraries-job.yml @@ -0,0 +1,51 @@ +parameters: + buildConfig: '' + archType: '' + osGroup: '' + osSubgroup: '' + container: '' + testGroup: '' + crossrootfsDir: '' + timeoutInMinutes: '' + signBinaries: false + publishToBlobFeed: false + stagedBuild: false + variables: {} + pool: '' + +jobs: +- template: /eng/pipelines/coreclr/templates/build-job.yml + parameters: + buildConfig: ${{ parameters.buildConfig }} + archType: ${{ parameters.archType }} + osGroup: ${{ parameters.osGroup }} + osSubgroup: ${{ parameters.osSubgroup }} + container: ${{ parameters.container }} + testGroup: ${{ parameters.testGroup }} + crossrootfsDir: ${{ parameters.crossrootfsDir }} + timeoutInminutes: ${{ parameters.timeoutInMinutes }} + signBinaries: ${{ parameters.signBinaries }} + publishToBlobFeed: ${{ parameters.publishToBlobFeed }} + stagedBuild: ${{ parameters.stagedBuild }} + variables: ${{ parameters.variables }} + pool: ${{ parameters.pool }} + +- template: /eng/pipelines/libraries/build-job.yml + parameters: + ${{ if eq(parameters.buildConfig, 'debug') }}: + buildConfig: Debug + ${{ if ne(parameters.buildConfig, 'debug') }}: + buildConfig: Release + archType: ${{ parameters.archType }} + osGroup: ${{ parameters.osGroup }} + osSubgroup: ${{ parameters.osSubgroup }} + container: ${{ parameters.container }} + testGroup: ${{ parameters.testGroup }} + crossrootfsDir: ${{ parameters.crossrootfsDir }} + timeoutInminutes: ${{ parameters.timeoutInMinutes }} + signBinaries: ${{ parameters.signBinaries }} + publishToBlobFeed: ${{ parameters.publishToBlobFeed }} + stagedBuild: ${{ parameters.stagedBuild }} + variables: ${{ parameters.variables }} + pool: ${{ parameters.pool }} + liveCoreClrBuildConfig: ${{ parameters.buildConfig }} diff --git a/eng/pipelines/coreclr/crossgen2.yml b/eng/pipelines/coreclr/crossgen2.yml index 08e1431..bca212e 100644 --- a/eng/pipelines/coreclr/crossgen2.yml +++ b/eng/pipelines/coreclr/crossgen2.yml @@ -18,7 +18,7 @@ jobs: - template: /eng/pipelines/common/platform-matrix.yml parameters: - jobTemplate: /eng/pipelines/coreclr/templates/build-job.yml + jobTemplate: /eng/pipelines/common/build-coreclr-and-libraries-job.yml buildConfig: checked platforms: - Linux_x64 @@ -36,6 +36,7 @@ jobs: - Windows_NT_x64 jobParameters: testGroup: innerloop + useLiveLibrariesBuildConfig: Release - template: /eng/pipelines/common/platform-matrix.yml parameters: @@ -51,3 +52,4 @@ jobs: readyToRun: true crossgen2: true displayNameArgs: R2R_CG2 + useLiveLibrariesBuildConfig: Release -- 2.7.4