зеркало из https://github.com/dotnet/infer.git
Nightly windows pipeline split into 4 jobs
This commit is contained in:
Родитель
4d6e13fe75
Коммит
29eda6edea
|
@ -14,75 +14,95 @@ trigger: none # disable CI build
|
|||
|
||||
queue:
|
||||
name: Hosted VS2017
|
||||
timeoutInMinutes: 120
|
||||
|
||||
steps:
|
||||
- task: Bash@3
|
||||
displayName: 'Updating assembly versions'
|
||||
inputs:
|
||||
filePath: build/updateversion.sh
|
||||
workingDirectory: build
|
||||
arguments: $(Build.BuildNumber)
|
||||
# Cannot use matrix strategy to create jobs for different platforms,
|
||||
# since then the platform is given as a variable which cannot be passed as a parameter to a template,
|
||||
# because templates are actualized at a very early stage when the variable has no value yet.
|
||||
jobs:
|
||||
- job: Windows Build and Test (x64)
|
||||
timeoutInMinutes: 180
|
||||
|
||||
steps:
|
||||
- template: windows-msbuild.yml
|
||||
parameters:
|
||||
BuildConfiguration: '$(BuildConfiguration)'
|
||||
BuildNumber: '$(Build.BuildNumber)'
|
||||
|
||||
- task: NuGetToolInstaller@0
|
||||
inputs:
|
||||
versionSpec: '4.7.0'
|
||||
- template: vstest-fast.yml
|
||||
parameters:
|
||||
Platform: 'x64'
|
||||
|
||||
- task: NuGetCommand@2
|
||||
displayName: 'Restoring NuGet packages'
|
||||
inputs:
|
||||
command: 'restore'
|
||||
restoreSolution: '**/*.sln'
|
||||
- job: Windows Build and Test (x86)
|
||||
timeoutInMinutes: 180
|
||||
|
||||
- task: MSBuild@1
|
||||
displayName: 'Building solutions'
|
||||
inputs:
|
||||
solution: '**/*.sln'
|
||||
clean: true
|
||||
configuration: $(BuildConfiguration)
|
||||
steps:
|
||||
- template: windows-msbuild.yml
|
||||
parameters:
|
||||
BuildConfiguration: '$(BuildConfiguration)'
|
||||
BuildNumber: '$(Build.BuildNumber)'
|
||||
|
||||
- template: vstest-fast.yml
|
||||
parameters:
|
||||
Platform: 'x64'
|
||||
- template: vstest-fast.yml
|
||||
parameters:
|
||||
Platform: 'x86'
|
||||
|
||||
- template: vstest-fast.yml
|
||||
parameters:
|
||||
Platform: 'x86'
|
||||
|
||||
- template: evaluator-netcore.yml
|
||||
parameters:
|
||||
Configuration: '$(BuildConfiguration)'
|
||||
- job: Windows Evaluator
|
||||
timeoutInMinutes: 180
|
||||
|
||||
- template: evaluator-netframework.yml
|
||||
parameters:
|
||||
Configuration: '$(BuildConfiguration)'
|
||||
steps:
|
||||
- template: windows-msbuild.yml
|
||||
parameters:
|
||||
BuildConfiguration: '$(BuildConfiguration)'
|
||||
BuildNumber: '$(Build.BuildNumber)'
|
||||
|
||||
- task: Bash@3
|
||||
displayName: 'Gathering built assemblies'
|
||||
condition: eq(variables['BuildConfiguration'], 'Release')
|
||||
inputs:
|
||||
filePath: build/copyassemblies.sh
|
||||
arguments: ../bin $(BuildConfiguration)
|
||||
workingDirectory: build
|
||||
- template: evaluator-netcore.yml
|
||||
parameters:
|
||||
Configuration: '$(BuildConfiguration)'
|
||||
|
||||
- task: NuGetCommand@2
|
||||
displayName: 'Creating NuGet packages'
|
||||
condition: eq(variables['BuildConfiguration'], 'Release')
|
||||
inputs:
|
||||
command: pack
|
||||
packagesToPack: build/*.nuspec
|
||||
includeSymbols: true
|
||||
buildProperties: version=$(Build.BuildNumber);bin=../bin
|
||||
- template: evaluator-netframework.yml
|
||||
parameters:
|
||||
Configuration: '$(BuildConfiguration)'
|
||||
|
||||
- task: CopyFiles@2
|
||||
displayName: 'Copying build artifacts'
|
||||
condition: eq(variables['BuildConfiguration'], 'Release')
|
||||
inputs:
|
||||
sourceFolder: bin
|
||||
targetFolder: $(Build.ArtifactStagingDirectory)
|
||||
|
||||
- task: PublishBuildArtifacts@1
|
||||
displayName: 'Publishing build artifacts'
|
||||
condition: eq(variables['BuildConfiguration'], 'Release')
|
||||
inputs:
|
||||
artifactName: 'Everything'
|
||||
- job: Package and Publish
|
||||
timeoutInMinutes: 30
|
||||
dependsOn:
|
||||
- Windows Build and Test (x64)
|
||||
- Windows Build and Test (x86)
|
||||
- Windows Evaluator
|
||||
|
||||
steps:
|
||||
- template: windows-msbuild.yml
|
||||
parameters:
|
||||
BuildConfiguration: '$(BuildConfiguration)'
|
||||
BuildNumber: '$(Build.BuildNumber)'
|
||||
|
||||
- task: Bash@3
|
||||
displayName: 'Gathering built assemblies'
|
||||
condition: eq(variables['BuildConfiguration'], 'Release')
|
||||
inputs:
|
||||
filePath: build/copyassemblies.sh
|
||||
arguments: ../bin $(BuildConfiguration)
|
||||
workingDirectory: build
|
||||
|
||||
- task: NuGetCommand@2
|
||||
displayName: 'Creating NuGet packages'
|
||||
condition: eq(variables['BuildConfiguration'], 'Release')
|
||||
inputs:
|
||||
command: pack
|
||||
packagesToPack: build/*.nuspec
|
||||
includeSymbols: true
|
||||
buildProperties: version=$(Build.BuildNumber);bin=../bin
|
||||
|
||||
- task: CopyFiles@2
|
||||
displayName: 'Copying build artifacts'
|
||||
condition: eq(variables['BuildConfiguration'], 'Release')
|
||||
inputs:
|
||||
sourceFolder: bin
|
||||
targetFolder: $(Build.ArtifactStagingDirectory)
|
||||
|
||||
- task: PublishBuildArtifacts@1
|
||||
displayName: 'Publishing build artifacts'
|
||||
condition: eq(variables['BuildConfiguration'], 'Release')
|
||||
inputs:
|
||||
artifactName: 'Everything'
|
|
@ -0,0 +1,35 @@
|
|||
# Licensed to the .NET Foundation under one or more agreements.
|
||||
# The .NET Foundation licenses this file to you under the MIT license.
|
||||
# See the LICENSE file in the project root for more information.
|
||||
|
||||
# Template for building all solutions using MSBuild
|
||||
|
||||
parameters:
|
||||
BuildNumber: '0.0.0'
|
||||
BuildConfiguration: 'Release'
|
||||
|
||||
|
||||
steps:
|
||||
- task: Bash@3
|
||||
displayName: 'Updating assembly versions'
|
||||
inputs:
|
||||
filePath: build/updateversion.sh
|
||||
workingDirectory: build
|
||||
arguments: ${{ parameters.BuildNumber }}
|
||||
|
||||
- task: NuGetToolInstaller@0
|
||||
inputs:
|
||||
versionSpec: '4.7.0'
|
||||
|
||||
- task: NuGetCommand@2
|
||||
displayName: 'Restoring NuGet packages'
|
||||
inputs:
|
||||
command: 'restore'
|
||||
restoreSolution: '**/*.sln'
|
||||
|
||||
- task: MSBuild@1
|
||||
displayName: 'Building solutions'
|
||||
inputs:
|
||||
solution: '**/*.sln'
|
||||
clean: true
|
||||
configuration: ${{ parameters.BuildConfiguration }}
|
Загрузка…
Ссылка в новой задаче