|
@@ -1,134 +0,0 @@
|
|
|
-trigger:
|
|
|
|
|
- batch: true
|
|
|
|
|
- branches:
|
|
|
|
|
- include:
|
|
|
|
|
- - master
|
|
|
|
|
-
|
|
|
|
|
-pr:
|
|
|
|
|
- branches:
|
|
|
|
|
- include:
|
|
|
|
|
- - master
|
|
|
|
|
-
|
|
|
|
|
-variables:
|
|
|
|
|
-- ${{ if ne(variables['System.TeamProject'], 'public') }}:
|
|
|
|
|
- - group: DotNet-VSTS-Bot
|
|
|
|
|
- - group: DotNet-Blob-Feed
|
|
|
|
|
-- ${{ if and(ne(variables['System.TeamProject'], 'public'), ne(variables['Build.Reason'], 'PullRequest')) }}:
|
|
|
|
|
- # Variables used by arcade to publish packages
|
|
|
|
|
- - name: _DotNetFeedUrl
|
|
|
|
|
- value: https://dotnetfeed.blob.core.windows.net/dotnet-core/index.json
|
|
|
|
|
- - name: _DotNetValidationArtifactsCategory
|
|
|
|
|
- value: .NETCore
|
|
|
|
|
- - name: _DotNetArtifactsCategory
|
|
|
|
|
- value: .NETCore
|
|
|
|
|
-
|
|
|
|
|
-stages:
|
|
|
|
|
-- stage: build
|
|
|
|
|
- displayName: Build
|
|
|
|
|
- jobs:
|
|
|
|
|
- - template: /eng/common/templates/jobs/jobs.yml
|
|
|
|
|
- parameters:
|
|
|
|
|
- enablePublishBuildArtifacts: true
|
|
|
|
|
- enablePublishBuildAssets: true
|
|
|
|
|
- enablePublishUsingPipelines: true
|
|
|
|
|
- variables:
|
|
|
|
|
- - _BuildConfig: Release
|
|
|
|
|
- jobs:
|
|
|
|
|
-
|
|
|
|
|
- ############ LINUX BUILD ############
|
|
|
|
|
- - job: Build_Linux
|
|
|
|
|
- displayName: Linux
|
|
|
|
|
- timeoutInMinutes: 120
|
|
|
|
|
- strategy:
|
|
|
|
|
- matrix:
|
|
|
|
|
- x64 LLVM:
|
|
|
|
|
- poolname: Hosted Ubuntu 1604
|
|
|
|
|
- assetManifestOS: linux
|
|
|
|
|
- assetManifestPlatform: x64_LLVM
|
|
|
|
|
- installDependencies: true
|
|
|
|
|
- llvm: true
|
|
|
|
|
- pool:
|
|
|
|
|
- name: $(poolname)
|
|
|
|
|
- steps:
|
|
|
|
|
- - bash: |
|
|
|
|
|
- git clean -ffdx
|
|
|
|
|
- git reset --hard HEAD
|
|
|
|
|
- displayName: 'Clean up working directory'
|
|
|
|
|
-
|
|
|
|
|
- - bash: |
|
|
|
|
|
- git submodule update --init -- external/llvm-project
|
|
|
|
|
- condition: eq(variables['llvm'], 'true')
|
|
|
|
|
- displayName: 'Checkout external/llvm-project'
|
|
|
|
|
-
|
|
|
|
|
- - bash: |
|
|
|
|
|
- sudo apt update
|
|
|
|
|
- sudo apt -y install nuget libgdiplus build-essential libtool libtool-bin cmake gettext bc
|
|
|
|
|
- displayName: 'Install Linux dependencies'
|
|
|
|
|
- condition: and(succeeded(), eq(variables['installDependencies'], 'true'))
|
|
|
|
|
-
|
|
|
|
|
- - bash: |
|
|
|
|
|
- sed -i "s#git://github.com/#https://dn-bot:${dncengPat}@dev.azure.com/dnceng/internal/_git/#; s#\.git\$##; s#\(url = .*\)/\(.*\)#\1-\2#" .gitmodules
|
|
|
|
|
- env:
|
|
|
|
|
- dncengPat: $(dn-bot-dotnet-build-rw-code-rw)
|
|
|
|
|
- displayName: 'Rewrite .gitmodules'
|
|
|
|
|
- condition: and(succeeded(), ne(variables['System.TeamProject'], 'public'), ne(variables['Build.Reason'], 'PullRequest'))
|
|
|
|
|
-
|
|
|
|
|
- - bash: |
|
|
|
|
|
- if [ $(llvm) = true ]; then
|
|
|
|
|
- ./netcore/build.sh --ci -c $(_BuildConfig) --llvm
|
|
|
|
|
- else
|
|
|
|
|
- ./netcore/build.sh --ci -c $(_BuildConfig)
|
|
|
|
|
- fi
|
|
|
|
|
- displayName: 'Build (Make)'
|
|
|
|
|
-
|
|
|
|
|
- - bash: |
|
|
|
|
|
- if [ $(llvm) = true ]; then
|
|
|
|
|
- ./netcore/build.sh --ci --pack --skipnative --skipmscorlib --llvm
|
|
|
|
|
- else
|
|
|
|
|
- ./netcore/build.sh --ci --pack --skipnative --skipmscorlib
|
|
|
|
|
- fi
|
|
|
|
|
- mkdir -p ./artifacts/log/$(_BuildConfig)
|
|
|
|
|
- mkdir -p ./artifacts/SymStore/$(_BuildConfig)
|
|
|
|
|
- mkdir -p ./artifacts/packages/$(_BuildConfig)/Shipping
|
|
|
|
|
- cp ./netcore/System.Private.CoreLib/bin/*/System.Private.CoreLib.pdb ./artifacts/SymStore/$(_BuildConfig)
|
|
|
|
|
- rm -f ./artifacts/Microsoft.NETCore.Runtime.Mono*nupkg
|
|
|
|
|
- mv ./artifacts/*.nupkg ./artifacts/packages/$(_BuildConfig)/Shipping
|
|
|
|
|
- displayName: 'Build nupkg'
|
|
|
|
|
-
|
|
|
|
|
- - bash: |
|
|
|
|
|
- if [ $(llvm) = true ]; then
|
|
|
|
|
- make -C netcore run-tests-corefx-System.Runtime.Tests USE_TIMEOUT=1 XUNIT_MONO_ENV_OPTIONS="--llvm"
|
|
|
|
|
- make -C netcore run-tests-corefx-System.Runtime.Extensions.Tests USE_TIMEOUT=1 XUNIT_MONO_ENV_OPTIONS="--llvm"
|
|
|
|
|
- make -C netcore run-tests-corefx-System.Runtime.Numerics.Tests USE_TIMEOUT=1 XUNIT_MONO_ENV_OPTIONS="--llvm"
|
|
|
|
|
- make -C netcore run-tests-corefx-System.Numerics.Vectors.Tests USE_TIMEOUT=1 XUNIT_MONO_ENV_OPTIONS="--llvm"
|
|
|
|
|
- make -C netcore run-tests-corefx-System.Memory.Tests USE_TIMEOUT=1 XUNIT_MONO_ENV_OPTIONS="--llvm"
|
|
|
|
|
- make -C netcore run-tests-corefx-System.Buffers.Tests USE_TIMEOUT=1 XUNIT_MONO_ENV_OPTIONS="--llvm"
|
|
|
|
|
- make -C netcore run-tests-mono MONO_ENV_OPTIONS="--llvm"
|
|
|
|
|
- elif [ $(interpreter) = true ]; then
|
|
|
|
|
- ./netcore/build.sh --ci --test --skipnative --skipmscorlib --interpreter
|
|
|
|
|
- else
|
|
|
|
|
- ./netcore/build.sh --ci --test --skipnative --skipmscorlib
|
|
|
|
|
- fi
|
|
|
|
|
- displayName: 'Download and Run CoreFX Tests'
|
|
|
|
|
- timeoutInMinutes: 90
|
|
|
|
|
- condition: and(succeeded(), eq(variables['System.TeamProject'], 'public'))
|
|
|
|
|
-
|
|
|
|
|
- - task: PublishTestResults@2
|
|
|
|
|
- inputs:
|
|
|
|
|
- testRunTitle: $(poolname)
|
|
|
|
|
- testResultsFormat: 'XUnit'
|
|
|
|
|
- testResultsFiles: 'netcore/corefx/tests/TestResult-*.xml'
|
|
|
|
|
- condition: and(succeededOrFailed(), eq(variables['System.TeamProject'], 'public'))
|
|
|
|
|
-
|
|
|
|
|
- - script: ./eng/common/build.sh --ci --restore --publish --configuration $(_BuildConfig) /p:DotNetPublishUsingPipelines=true /p:DotNetPublishToBlobFeed=true /p:DotNetPublishBlobFeedUrl=$(_DotNetFeedUrl) /p:DotNetPublishBlobFeedKey=$(dotnetfeed-storage-access-key-1) /p:DotNetArtifactsCategory=$(_DotNetArtifactsCategory) /p:AssetManifestOS=$(assetManifestOS) /p:PlatformName=$(assetManifestPlatform) --projects $(Build.SourcesDirectory)/eng/empty.csproj
|
|
|
|
|
- displayName: Publish packages
|
|
|
|
|
- condition: and(succeeded(), ne(variables['System.TeamProject'], 'public'), ne(variables['Build.Reason'], 'PullRequest'))
|
|
|
|
|
-
|
|
|
|
|
-############ POST BUILD ARCADE LOGIC ############
|
|
|
|
|
-- ${{ if and(ne(variables['System.TeamProject'], 'public'), ne(variables['Build.Reason'], 'PullRequest')) }}:
|
|
|
|
|
- - template: /eng/common/templates/post-build/post-build.yml
|
|
|
|
|
- parameters:
|
|
|
|
|
- enableSourceLinkValidation: false
|
|
|
|
|
- enableSigningValidation: false
|
|
|
|
|
- enableSymbolValidation: false
|
|
|
|
|
- enableNugetValidation: true
|
|
|