195 lines
6.4 KiB
YAML
195 lines
6.4 KiB
YAML
phases:
|
|
- phase: Windows
|
|
queue:
|
|
name: DotNetCore-Windows
|
|
timeoutInMinutes: 120
|
|
matrix:
|
|
Release:
|
|
BuildConfiguration: Release
|
|
# see https://github.com/dotnet/core-eng/issues/4053 - MSI's cannot build from the NTAuthority\NetworkService account
|
|
demands:
|
|
- agent.name -equals DDVSOSWINAGE086
|
|
variables:
|
|
CI: true
|
|
DOTNET_SKIP_FIRST_TIME_EXPERIENCE: true
|
|
steps:
|
|
- task: NodeTool@0
|
|
displayName: Install Node 10.x
|
|
inputs:
|
|
versionSpec: 10.x
|
|
# TODO: configure build.cmd to build both x64 and x86 in one invocation
|
|
# TODO build.cmd -ci
|
|
- script: build.cmd /p:SkipTests=true /p:Configuration=$(BuildConfiguration) /p:BuildNumber=$(Build.BuildNumber) /t:Build /t:BuildSharedFx /p:SharedFxRID=win-x64 /t:BuildFallbackArchive
|
|
displayName: Build NuGet packages and win-x64 runtime
|
|
- script: build.cmd /p:SkipTests=true /p:Configuration=$(BuildConfiguration) /p:BuildNumber=$(Build.BuildNumber) /t:BuildSharedFx /p:SharedFxRID=win-x86
|
|
displayName: Build win-x86 runtime
|
|
- powershell: >
|
|
src/Installers/Windows/clone_and_build_ancm.ps1
|
|
-GitCredential '$(dn-bot-devdiv-build-rw-code-rw)'
|
|
-Config $(BuildConfiguration)
|
|
-BuildNumber $(Build.BuildNumber)
|
|
displayName: Build ANCM installers
|
|
# TODO: configure harvesting to run as a part of build.cmd
|
|
- powershell: >
|
|
src/Installers/Windows/build.ps1
|
|
-x64 artifacts/runtime/aspnetcore-runtime-internal-2.2.0-preview2-$(Build.BuildNumber)-win-x64.zip
|
|
-x86 artifacts/runtime/aspnetcore-runtime-internal-2.2.0-preview2-$(Build.BuildNumber)-win-x86.zip
|
|
-Config $(BuildConfiguration)
|
|
-BuildNumber $(Build.BuildNumber)
|
|
displayName: Build Windows installers
|
|
- task: PublishTestResults@2
|
|
displayName: Publish test results
|
|
condition: always()
|
|
inputs:
|
|
testRunner: vstest
|
|
testResultsFiles: 'artifacts/logs/**/*.trx'
|
|
- task: PublishBuildArtifacts@1
|
|
displayName: Upload artifacts
|
|
condition: eq(variables['system.pullrequest.isfork'], false)
|
|
inputs:
|
|
pathtoPublish: ./artifacts/
|
|
artifactName: artifacts-Windows-Release
|
|
artifactType: Container
|
|
|
|
- phase: macOS
|
|
dependsOn: Windows
|
|
queue:
|
|
name: Hosted macOS Preview
|
|
matrix:
|
|
Release:
|
|
BuildConfiguration: Release
|
|
variables:
|
|
CI: true
|
|
DOTNET_SKIP_FIRST_TIME_EXPERIENCE: true
|
|
steps:
|
|
- task: DownloadBuildArtifacts@0
|
|
displayName: Download artifacts
|
|
inputs:
|
|
artifactName: artifacts-Windows-Release
|
|
downloadPath: $(Build.SourcesDirectory)/.deps
|
|
itemPattern: '**/*.nupkg'
|
|
# Workaround https://github.com/Microsoft/vsts-tasks/issues/6739
|
|
- task: CopyFiles@2
|
|
displayName: Copy package assets to correct folder
|
|
inputs:
|
|
sourceFolder: $(Build.SourcesDirectory)/.deps/artifacts-Windows-Release
|
|
targetFolder: $(Build.SourcesDirectory)/.deps
|
|
- script: >
|
|
./build.sh
|
|
--ci
|
|
/t:Prepare
|
|
/t:Restore
|
|
/t:GeneratePropsFiles
|
|
/t:BuildSharedFx
|
|
/p:SharedFxRID=osx-x64
|
|
/p:BuildNumber=$(Build.BuildNumber)
|
|
displayName: Build osx-x64 runtime
|
|
- task: PublishTestResults@2
|
|
displayName: Publish test results
|
|
condition: always()
|
|
inputs:
|
|
testRunner: vstest
|
|
testResultsFiles: 'artifacts/logs/**/*.trx'
|
|
- task: PublishBuildArtifacts@1
|
|
displayName: Upload artifacts
|
|
condition: eq(variables['system.pullrequest.isfork'], false)
|
|
inputs:
|
|
pathtoPublish: ./artifacts/
|
|
artifactName: artifacts-macOS-Release
|
|
artifactType: Container
|
|
|
|
- phase: Linux
|
|
dependsOn:
|
|
- Windows
|
|
- macOS
|
|
queue:
|
|
name: DotNetCore-Linux
|
|
matrix:
|
|
Release:
|
|
BuildConfiguration: Release
|
|
variables:
|
|
CI: true
|
|
DOTNET_SKIP_FIRST_TIME_EXPERIENCE: true
|
|
steps:
|
|
- task: DownloadBuildArtifacts@0
|
|
displayName: Download artifacts
|
|
inputs:
|
|
artifactName: artifacts-Windows-Release
|
|
downloadPath: $(Build.SourcesDirectory)/.deps
|
|
itemPattern: '**/*.nupkg'
|
|
- task: DownloadBuildArtifacts@0
|
|
displayName: Download Windows artifacts
|
|
inputs:
|
|
artifactName: artifacts-Windows-Release
|
|
downloadPath: $(Build.SourcesDirectory)/.r
|
|
itemPattern: '**/aspnetcore-runtime-*'
|
|
- task: DownloadBuildArtifacts@0
|
|
displayName: Download macOS artifacts
|
|
inputs:
|
|
artifactName: artifacts-macOS-Release
|
|
downloadPath: $(Build.SourcesDirectory)/.r
|
|
itemPattern: '**/aspnetcore-runtime-*'
|
|
# Workaround https://github.com/Microsoft/vsts-tasks/issues/6739
|
|
- task: CopyFiles@2
|
|
displayName: Copy package assets to correct folder
|
|
inputs:
|
|
sourceFolder: $(Build.SourcesDirectory)/.deps/artifacts-Windows-Release
|
|
targetFolder: $(Build.SourcesDirectory)/.deps
|
|
# TODO: Make the cumulative zips build in their own step
|
|
- task: CopyFiles@2
|
|
displayName: Copy package assets to correct folder
|
|
inputs:
|
|
sourceFolder: $(Build.SourcesDirectory)/.r/artifacts-Windows-Release
|
|
targetFolder: $(Build.SourcesDirectory)/artifacts/
|
|
- task: CopyFiles@2
|
|
displayName: Copy package assets to correct folder
|
|
inputs:
|
|
sourceFolder: $(Build.SourcesDirectory)/.r/artifacts-macOS-Release
|
|
targetFolder: $(Build.SourcesDirectory)/artifacts/
|
|
- script: >
|
|
./build.sh
|
|
--ci
|
|
/t:Prepare
|
|
/t:Restore
|
|
/t:GeneratePropsFiles
|
|
/t:BuildSharedFx
|
|
/p:SharedFxRID=linux-x64
|
|
/p:BuildNumber=$(Build.BuildNumber)
|
|
displayName: Build linux-x64 runtime
|
|
- script: >
|
|
./build.sh
|
|
--ci
|
|
/t:BuildSharedFx
|
|
/p:SharedFxRID=linux-arm
|
|
/p:BuildNumber=$(Build.BuildNumber)
|
|
displayName: Build linux-arm runtime
|
|
- script: >
|
|
./dockerbuild.sh
|
|
alpine
|
|
/t:Prepare
|
|
/t:GeneratePropsFiles
|
|
/t:BuildSharedFx
|
|
/p:SharedFxRID=linux-musl-x64
|
|
/p:BuildNumber=$(Build.BuildNumber)
|
|
displayName: Build linux-musl-x64 runtime
|
|
# TODO: configure installers to run in one build.sh invocation
|
|
- script: >
|
|
./build.sh
|
|
--ci
|
|
/t:BuildInstallers
|
|
/p:_SharedFxSourceDir=$(Build.SourcesDirectory)/artifacts/runtime/
|
|
displayName: Build linux installers
|
|
- task: PublishTestResults@2
|
|
displayName: Publish test results
|
|
condition: always()
|
|
inputs:
|
|
testRunner: vstest
|
|
testResultsFiles: 'artifacts/logs/**/*.trx'
|
|
- task: PublishBuildArtifacts@1
|
|
displayName: Upload artifacts
|
|
condition: eq(variables['system.pullrequest.isfork'], false)
|
|
inputs:
|
|
pathtoPublish: ./artifacts/
|
|
artifactName: artifacts-Linux-Release
|
|
artifactType: Container
|