-
Notifications
You must be signed in to change notification settings - Fork 1
/
azure-pipelines.yml
67 lines (57 loc) · 1.68 KB
/
azure-pipelines.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
# Starter pipeline
# Start with a minimal pipeline that you can customize to build and deploy your code.
# Add steps that build, run tests, deploy, and more:
# https://aka.ms/yaml
trigger:
- master
pool:
vmImage: 'windows-2019' # Windows Server 2019 with Visual Studio 2019
variables:
# patch will be incremented at each build. This is useful to create a unique build version.
patch: $[counter(variables['Build.Reason'], 0)]
version: $[format('1.1.{0}', variables['patch'])]
solution: '**/*.sln'
buildPlatform: 'Any CPU'
buildConfiguration: 'Release'
DOTNET_SKIP_FIRST_TIME_EXPERIENCE: 1
name: $(Build.Reason)-$(version)
steps:
- task: PowerShell@2
displayName: Update version in the vsix manifest
inputs:
filePath: 'Build\update-version.ps1'
arguments: '$(version)'
pwsh: true
- task: NuGetCommand@2
displayName: NuGet restore
inputs:
command: 'restore'
restoreSolution: '**/*.sln'
- task: VSBuild@1
displayName: Build solution
inputs:
solution: '**\*.sln'
maximumCpuCount: true
platform: '$(buildPlatform)'
configuration: '$(buildConfiguration)'
- task: VSTest@2
displayName: Run tests
inputs:
platform: '$(buildPlatform)'
configuration: '$(buildConfiguration)'
# Publish all needed files for the Release pipeline
- task: CopyFiles@2
displayName: Copy Artifacts to staging
inputs:
SourceFolder: '$(Build.SourcesDirectory)'
Contents: |
README.md
Build/**
Images/**
PinnacleCodingConvention/Resources/**
**/*.vsix
TargetFolder: '$(Build.ArtifactStagingDirectory)'
- task: PublishPipelineArtifact@0
inputs:
artifactName: 'drop'
targetPath: '$(Build.ArtifactStagingDirectory)'