-
Notifications
You must be signed in to change notification settings - Fork 104
/
.azure-pipelines.yml
109 lines (100 loc) · 2.53 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
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
trigger:
batch: true
branches:
include:
- master
- next
- refs/tags/*
paths:
exclude:
- '**/*.md'
- '.appveyor.yml'
- '.codecov.yml'
- 'GitVersion.yml'
- 'GitReleaseManager.yaml'
- .vscode/*
- .git*
- .editorconfig
- .nuke
- LICENSE
pr:
autoCancel: true
branches:
include:
- master
- next
resources:
repositories:
- repository: rsg
type: github
name: RocketSurgeonsGuild/AzureDevopsTemplates
ref: refs/tags/v0.13.1
endpoint: github
variables:
- name: CONFIGURATION
value: Release
- name: VERBOSITY
value: Normal
- name: COVERAGE
value: '$(Agent.BuildDirectory)/c'
- name: ARTIFACTS
value: $(Build.ArtifactStagingDirectory)
- name: DOTNET_SKIP_FIRST_TIME_EXPERIENCE
value: 'true'
- name: CodeCovToken
value: 'd122bf99-4ca6-4a7c-a7ff-90468bcc7703'
jobs:
- template: jobs/publish-release.yml@rsg
parameters:
GitHubPackages: false
MyGetPackages: true
PublishNuGetPackagesFromArtifact: 'NuGet - Windows'
- job: Build
strategy:
matrix:
Windows:
BuildName: 'Windows'
ImageName: 'windows-latest'
Linux:
BuildName: 'Linux'
ImageName: 'ubuntu-latest'
macOS:
BuildName: 'macOS'
ImageName: 'macOS-latest'
pool:
vmImage: $(ImageName)
steps:
- template: support/mono.yml@rsg
# - ${{ if startsWith(variables['Build.SourceBranch'], 'refs/tags/v') }}:
# - template: support/download-release-notes.yml@rsg
- template: support/install-dotnet.yml@rsg
parameters:
DotNetSdk:
- '2.1.x'
- '3.1.x'
- '5.0.x'
- task: DotNetCoreCLI@2
displayName: 'dotnet tool restore'
inputs:
command: custom
custom: tool
arguments: 'restore'
- task: DotNetCoreCLI@2
displayName: 'dotnet restore'
inputs:
command: restore
feedsToUse: config
nugetConfigPath: NuGet.config
verbosityRestore: Minimal
- template: ./azure-pipelines.nuke.yml
parameters:
Artifacts: $(Artifacts)
Configuration: $(Configuration)
Coverage: $(Coverage)
- template: support/publish-artifacts.yml@rsg
parameters:
Artifacts: $(Artifacts)
Configuration: $(Configuration)
Coverage: $(Coverage)
Postfix: ' - $(BuildName)'
PublishVSTest: true