diff --git a/eng/pipelines/common/build-coreclr-and-libraries-job.yml b/eng/pipelines/common/build-coreclr-and-libraries-job.yml index 7ea5e7af112cf9..ddf5d8103cac75 100644 --- a/eng/pipelines/common/build-coreclr-and-libraries-job.yml +++ b/eng/pipelines/common/build-coreclr-and-libraries-job.yml @@ -13,21 +13,6 @@ parameters: pool: '' jobs: -- template: /eng/pipelines/coreclr/templates/build-corelib-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 }} - stagedBuild: ${{ parameters.stagedBuild }} - variables: ${{ parameters.variables }} - pool: ${{ parameters.pool }} - - template: /eng/pipelines/coreclr/templates/build-job.yml parameters: buildConfig: ${{ parameters.buildConfig }} diff --git a/eng/pipelines/coreclr/ci.yml b/eng/pipelines/coreclr/ci.yml index 0848c4cc3ea8cd..0249dc33eba230 100644 --- a/eng/pipelines/coreclr/ci.yml +++ b/eng/pipelines/coreclr/ci.yml @@ -31,17 +31,6 @@ jobs: # - template: /eng/pipelines/common/checkout-job.yml -# -# Checked Corelib builds -# -- template: /eng/pipelines/common/platform-matrix.yml - parameters: - jobTemplate: /eng/pipelines/coreclr/templates/build-corelib-job.yml - buildConfig: checked - platformGroup: all - jobParameters: - testGroup: outerloop - # # Debug builds # diff --git a/eng/pipelines/coreclr/templates/build-corelib-job.yml b/eng/pipelines/coreclr/templates/build-corelib-job.yml deleted file mode 100644 index b2b2c9a9324bbc..00000000000000 --- a/eng/pipelines/coreclr/templates/build-corelib-job.yml +++ /dev/null @@ -1,107 +0,0 @@ -parameters: - archType: '' - buildConfig: '' - condition: true - container: '' - crossrootfsDir: '' - isOfficialBuild: false - osGroup: '' - osSubgroup: '' - platform: '' - pool: '' - signBinaries: false - stagedBuild: false - testGroup: '' - timeoutInMinutes: '' - variables: {} - -### Product build -jobs: -- template: xplat-pipeline-job.yml - parameters: - buildConfig: ${{ parameters.buildConfig }} - _BuildConfig: ${{ parameters.buildConfig }} - archType: ${{ parameters.archType }} - osGroup: ${{ parameters.osGroup }} - osSubgroup: ${{ parameters.osSubgroup }} - testGroup: ${{ parameters.testGroup }} - helixType: 'build/product/' - enableMicrobuild: true - stagedBuild: ${{ parameters.stagedBuild }} - pool: ${{ parameters.pool }} - condition: ${{ parameters.condition }} - - name: ${{ format('coreclr_corelib_build_{0}{1}_{2}_{3}', parameters.osGroup, parameters.osSubgroup, parameters.archType, parameters.buildConfig) }} - displayName: ${{ format('CoreCLR CoreLib Build {0}{1} {2} {3}', parameters.osGroup, parameters.osSubgroup, parameters.archType, parameters.buildConfig) }} - - # Run all steps in the container. - # Note that the containers are defined in platform-matrix.yml - container: ${{ parameters.container }} - - timeoutInMinutes: ${{ parameters.timeoutInMinutes }} - - crossrootfsDir: ${{ parameters.crossrootfsDir }} - - gatherAssetManifests: true - variables: - - name: osGroup - value: ${{ parameters.osGroup }} - - name: osSubgroup - value: ${{ parameters.osSubgroup }} - - name: compilerArg - value: '' - - name: publishLogsArtifactPrefix - value: 'BuildLogs_CoreLib' - - name: officialBuildIdArg - value: '' - - ${{ if and(eq(variables['System.TeamProject'], 'internal'), ne(variables['Build.Reason'], 'PullRequest')) }}: - - name: officialBuildIdArg - value: '/p:OfficialBuildId=$(Build.BuildNumber)' - - - ${{ parameters.variables }} - - steps: - - # Install native dependencies - # Linux builds use docker images with dependencies preinstalled, - # and FreeBSD builds use a build agent with dependencies - # preinstalled, so we only need this step for OSX and Windows. - - ${{ if eq(parameters.osGroup, 'OSX') }}: - - script: sh $(Build.SourcesDirectory)/eng/install-native-dependencies.sh $(osGroup) - displayName: Install native dependencies - - ${{ if eq(parameters.osGroup, 'Windows_NT') }}: - # Necessary to install python - - script: $(Build.SourcesDirectory)\eng\common\init-tools-native.cmd -InstallDirectory $(Build.SourcesDirectory)\native-tools -Force - displayName: Install native dependencies - - # Install internal tools on official builds - # Since our internal tools are behind an authenticated feed, - # we need to use the DotNetCli AzDO task to restore from the feed using a service connection. - # We can't do this from within the build, so we need to do this as a separate step. - - ${{ if and(eq(variables['System.TeamProject'], 'internal'), ne(variables['Build.Reason'], 'PullRequest')) }}: - - template: /eng/pipelines/common/restore-internal-tools.yml - - # Build Private CoreLib - - script: $(Build.SourcesDirectory)$(dir)build$(scriptExt) -subset clr.corelib $(crossArg) -arch $(archType) -c $(buildConfig) $(officialBuildIdArg) -ci - displayName: Build System.Private.CoreLib - - - # Publish corelib output directory for consumption by libraries. - - template: /eng/pipelines/common/upload-artifact-step.yml - parameters: - rootFolder: $(buildProductRootFolderPath) - includeRootFolder: false - archiveType: $(archiveType) - tarCompression: $(tarCompression) - archiveExtension: $(archiveExtension) - artifactName: $(corelibProductArtifactName) - displayName: Upload System.Private.CoreLib - - # Publish Logs - - task: PublishPipelineArtifact@1 - displayName: Publish Logs - inputs: - targetPath: $(Build.SourcesDirectory)/artifacts/log - artifactName: '$(publishLogsArtifactPrefix)_$(osGroup)$(osSubgroup)_$(archType)_$(buildConfig)' - continueOnError: true - condition: always() diff --git a/eng/pipelines/libraries/base-job.yml b/eng/pipelines/libraries/base-job.yml index 0208840c23ed1d..df6f5e31a73468 100644 --- a/eng/pipelines/libraries/base-job.yml +++ b/eng/pipelines/libraries/base-job.yml @@ -96,16 +96,15 @@ jobs: - _runtimeArtifactName: '' - _runtimeDownloadPath: '' - _runtimeArtifactsPathArg: '' + - _runtimeConfigurationArg: '' - ${{ if ne(parameters.liveRuntimeBuildConfig, '') }}: - _runtimeDownloadPath: '$(Build.SourcesDirectory)/artifacts/transport/${{ parameters.runtimeFlavor }}' - # Download corelib dependencies for coreclr libraries and not test - - ${{ if and(eq(parameters.runtimeFlavor, 'coreclr'), eq(parameters.testScope, '')) }}: - - _runtimeArtifactName: 'CoreLib_${{ parameters.osGroup }}${{ parameters.osSubgroup }}_${{ parameters.archType }}_${{ parameters.liveRuntimeBuildConfig }}' + - _runtimeConfigurationArg: -rc ${{ parameters.liveRuntimeBuildConfig }} # Download full product dependencies for mono or test - ${{ if or(ne(parameters.runtimeFlavor, 'coreclr'), ne(parameters.testScope, '')) }}: - _runtimeArtifactName: '$(runtimeFlavorName)Product_${{ parameters.osGroup }}${{ parameters.osSubgroup }}_${{ parameters.archType }}_${{ parameters.liveRuntimeBuildConfig }}' - - _runtimeArtifactsPathArg: ' /p:RuntimeArtifactsPath=$(_runtimeDownloadPath)' + - _runtimeArtifactsPathArg: ' /p:RuntimeArtifactsPath=$(_runtimeDownloadPath)' - _testRunNamePrefixSuffix: $(runtimeFlavorName)_${{ parameters.liveRuntimeBuildConfig }} # Windows variables @@ -116,7 +115,7 @@ jobs: - ${{ if ne(parameters.osGroup, 'Windows_NT') }}: - _buildScript: ./$(_buildScriptFileName)$(scriptExt) - - _buildArguments: -configuration ${{ parameters.buildConfig }} -ci -arch ${{ parameters.archType }} $(_finalFrameworkArg) $(_testScopeArg) $(_runtimeOSArg) $(_msbuildCommonParameters) $(_runtimeArtifactsPathArg) $(_crossBuildPropertyArg) + - _buildArguments: $(_runtimeConfigurationArg) -configuration ${{ parameters.buildConfig }} -ci -arch ${{ parameters.archType }} $(_finalFrameworkArg) $(_testScopeArg) $(_runtimeOSArg) $(_msbuildCommonParameters) $(_runtimeArtifactsPathArg) $(_crossBuildPropertyArg) - ${{ parameters.variables }} dependsOn: @@ -131,7 +130,7 @@ jobs: steps: - template: /eng/pipelines/common/clone-checkout-bundle-step.yml - - ${{ if ne(parameters.liveRuntimeBuildConfig, '') }}: + - ${{ if and(ne(parameters.liveRuntimeBuildConfig, ''), or(ne(parameters.runtimeFlavor, 'coreclr'), ne(parameters.testScope, ''))) }}: - template: /eng/pipelines/common/download-artifact-step.yml parameters: unpackFolder: $(_runtimeDownloadPath) diff --git a/eng/pipelines/libraries/build-job.yml b/eng/pipelines/libraries/build-job.yml index 26ecca21b2a814..c541e688803d21 100644 --- a/eng/pipelines/libraries/build-job.yml +++ b/eng/pipelines/libraries/build-job.yml @@ -49,21 +49,23 @@ jobs: ${{ if ne(parameters.liveRuntimeBuildConfig, '') }}: dependsOn: - # Use corelib dependencies for coreclr and non test builds - - ${{ if and(eq(parameters.runtimeFlavor, 'coreclr'), eq(parameters.testScope, '')) }}: - - ${{ format('coreclr_corelib_build_{0}{1}_{2}_{3}', parameters.osGroup, parameters.osSubgroup, parameters.archType, parameters.liveRuntimeBuildConfig) }} + # Use full product dependency for non-coreclr and test builds - ${{ if or(ne(parameters.runtimeFlavor, 'coreclr'), ne(parameters.testScope, '')) }}: - ${{ format('{0}_product_build_{1}{2}_{3}_{4}', parameters.runtimeFlavor, parameters.osGroup, parameters.osSubgroup, parameters.archType, parameters.liveRuntimeBuildConfig) }} variables: - _subset: libs - - _addtionalBuildArguments: '' + - _additionalBuildArguments: '' - ${{ parameters.variables }} - ${{ if eq(parameters.osGroup, 'WebAssembly') }}: - EMSDK_PATH: /usr/local/emscripten + # for coreclr library builds (when not testing) build corelib as well. + - ${{ if and(eq(parameters.runtimeFlavor, 'coreclr'), eq(parameters.testScope, '')) }}: + - _subset: clr.corelib+libs + # Tests only run for 'allConfiguration' and 'net472' build-jobs - ${{ if eq(parameters.runTests, true) }}: - - _subset: libs+libs.tests - - _addtionalBuildArguments: /p:ArchiveTests=true + - _subset: clr.corelib+libs+libs.tests + - _additionalBuildArguments: /p:ArchiveTests=true - ${{ parameters.variables }} @@ -83,7 +85,7 @@ jobs: - script: $(_buildScript) -subset $(_subset) $(_buildArguments) - $(_addtionalBuildArguments) + $(_additionalBuildArguments) displayName: Restore and Build Product - ${{ if eq(parameters.runTests, false) }}: diff --git a/eng/pipelines/libraries/outerloop.yml b/eng/pipelines/libraries/outerloop.yml index eb3b2e9493ddf5..9afbf206e5f369 100644 --- a/eng/pipelines/libraries/outerloop.yml +++ b/eng/pipelines/libraries/outerloop.yml @@ -13,29 +13,6 @@ variables: jobs: - template: /eng/pipelines/common/checkout-job.yml - - # - # CoreLib Build - # - - template: /eng/pipelines/common/platform-matrix.yml - parameters: - jobTemplate: /eng/pipelines/coreclr/templates/build-corelib-job.yml - buildConfig: release - platforms: - - ${{ if eq(variables['includeWindowsOuterloop'], true) }}: - - Windows_NT_x64 - - Windows_NT_x86 - - ${{ if eq(variables['includeLinuxOuterloop'], true) }}: - - Linux_x64 - - Linux_musl_x64 - - ${{ if eq(variables['isFullMatrix'], true) }}: - - Linux_arm - - Linux_arm64 - - Linux_musl_arm64 - - ${{ if eq(variables['includeOsxOuterloop'], true) }}: - - OSX_x64 - jobParameters: - testGroup: innerloop # # CoreCLR Build diff --git a/eng/pipelines/runtime-official.yml b/eng/pipelines/runtime-official.yml index 0ab8f972b5811c..e2cd3a2d67d962 100644 --- a/eng/pipelines/runtime-official.yml +++ b/eng/pipelines/runtime-official.yml @@ -39,27 +39,6 @@ stages: # - template: /eng/pipelines/common/checkout-job.yml - # - # Build CoreLib - # - - template: /eng/pipelines/common/platform-matrix.yml - parameters: - jobTemplate: /eng/pipelines/coreclr/templates/build-corelib-job.yml - buildConfig: release - platforms: - - OSX_x64 - - Linux_x64 - - Linux_arm - - Linux_arm64 - - Linux_musl_x64 - - Linux_musl_arm64 - - Windows_NT_x86 - - Windows_NT_x64 - - Windows_NT_arm - - Windows_NT_arm64 - jobParameters: - isOfficialBuild: ${{ variables.isOfficialBuild }} - # # Build CoreCLR # diff --git a/eng/pipelines/runtime.yml b/eng/pipelines/runtime.yml index 38cdb046f5fe2b..69fcff01f611eb 100644 --- a/eng/pipelines/runtime.yml +++ b/eng/pipelines/runtime.yml @@ -118,27 +118,6 @@ jobs: - eng/pipelines/mono/* - eng/pipelines/libraries/* -# -# Build CoreLib release -# -- template: /eng/pipelines/common/platform-matrix.yml - parameters: - jobTemplate: /eng/pipelines/coreclr/templates/build-corelib-job.yml - buildConfig: release - platforms: - - OSX_x64 - - Linux_x64 - - Linux_arm - - Linux_arm64 - - Linux_musl_x64 - - Linux_musl_arm64 - - Windows_NT_x64 - - Windows_NT_x86 - - Windows_NT_arm - - Windows_NT_arm64 - jobParameters: - testGroup: innerloop - # # Build CoreCLR checked # Only when CoreCLR is changed