@@ -15,134 +15,141 @@ pr:
15
15
include :
16
16
- ' *'
17
17
18
- jobs :
19
- - template : /eng/common/templates/jobs/jobs.yml
20
- parameters :
21
- enableMicrobuild : true
22
- enablePublishBuildArtifacts : true
23
- enablePublishTestResults : true
24
- enablePublishBuildAssets : true
25
- enableTelemetry : true
26
- helixRepo : dotnet/command-line-api
27
- timeoutInMinutes : 180 # increase timeout since BAR publishing might wait a long time
28
- jobs :
29
- - job : Windows
30
- pool :
31
- # For public or PR jobs, use the hosted pool. For internal jobs use the internal pool.
32
- # Will eventually change this to two BYOC pools.
33
- ${{ if ne(variables['System.TeamProject'], 'internal') }} :
34
- name : NetCorePublic-Pool
35
- queue : BuildPool.Windows.10.Amd64.VS2019.Open
36
- ${{ if eq(variables['System.TeamProject'], 'internal') }} :
37
- name : NetCoreInternal-Pool
38
- queue : BuildPool.Windows.10.Amd64.VS2019
39
- variables :
40
- # Only enable publishing in official builds.
41
- - ${{ if and(ne(variables['System.TeamProject'], 'public'), notin(variables['Build.Reason'], 'PullRequest')) }} :
42
- # DotNet-Blob-Feed provides: dotnetfeed-storage-access-key-1
43
- # Publish-Build-Assets provides: MaestroAccessToken, BotAccount-dotnet-maestro-bot-PAT
44
- - group : DotNet-Blob-Feed
45
- - group : DotNet-Symbol-Server-Pats
46
- - group : Publish-Build-Assets
47
- - name : _OfficialBuildArgs
48
- value : /p:DotNetSignType=$(_SignType)
49
- /p:TeamName=$(_TeamName)
50
- /p:DotNetPublishBlobFeedKey=$(dotnetfeed-storage-access-key-1)
51
- /p:DotNetPublishBlobFeedUrl=https://dotnetfeed.blob.core.windows.net/dotnet-core/index.json
52
- /p:DotNetPublishToBlobFeed=$(_DotNetPublishToBlobFeed)
53
- /p:OfficialBuildId=$(BUILD.BUILDNUMBER)
54
- /p:PublishToSymbolServer=true
55
- /p:DotNetSymbolServerTokenMsdl=$(microsoft-symbol-server-pat)
56
- /p:DotNetSymbolServerTokenSymWeb=$(symweb-symbol-server-pat)
57
- # else
58
- - ${{ if or(eq(variables['System.TeamProject'], 'public'), in(variables['Build.Reason'], 'PullRequest')) }} :
59
- - name : _OfficialBuildArgs
60
- value : ' '
61
- strategy :
62
- matrix :
63
- ${{ if in(variables['Build.Reason'], 'PullRequest') }} :
64
- Debug :
65
- _BuildConfig : Debug
66
- _SignType : test
67
- _DotNetPublishToBlobFeed : false
68
- _BuildArgs :
18
+ stages :
19
+ - stage : build
20
+ displayName : Build and Test
21
+ jobs :
22
+ - template : /eng/common/templates/jobs/jobs.yml
23
+ parameters :
24
+ enableMicrobuild : true
25
+ enablePublishBuildArtifacts : true
26
+ enablePublishTestResults : true
27
+ enablePublishBuildAssets : true
28
+ enableTelemetry : true
29
+ helixRepo : dotnet/command-line-api
30
+ timeoutInMinutes : 180 # increase timeout since BAR publishing might wait a long time
31
+ jobs :
32
+ - job : Windows
33
+ pool :
34
+ # For public or PR jobs, use the hosted pool. For internal jobs use the internal pool.
35
+ # Will eventually change this to two BYOC pools.
36
+ ${{ if ne(variables['System.TeamProject'], 'internal') }} :
37
+ name : NetCorePublic-Pool
38
+ queue : BuildPool.Windows.10.Amd64.VS2019.Open
39
+ ${{ if eq(variables['System.TeamProject'], 'internal') }} :
40
+ name : NetCoreInternal-Pool
41
+ queue : BuildPool.Windows.10.Amd64.VS2019
42
+ variables :
43
+ # Only enable publishing in official builds.
44
+ - ${{ if and(ne(variables['System.TeamProject'], 'public'), notin(variables['Build.Reason'], 'PullRequest')) }} :
45
+ # DotNet-Blob-Feed provides: dotnetfeed-storage-access-key-1
46
+ # Publish-Build-Assets provides: MaestroAccessToken, BotAccount-dotnet-maestro-bot-PAT
47
+ - group : DotNet-Blob-Feed
48
+ - group : DotNet-Symbol-Server-Pats
49
+ - group : Publish-Build-Assets
50
+ - name : _OfficialBuildArgs
51
+ value : /p:DotNetSignType=$(_SignType)
52
+ /p:TeamName=$(_TeamName)
53
+ /p:DotNetPublishBlobFeedKey=$(dotnetfeed-storage-access-key-1)
54
+ /p:DotNetPublishBlobFeedUrl=https://dotnetfeed.blob.core.windows.net/dotnet-core/index.json
55
+ /p:DotNetPublishToBlobFeed=$(_DotNetPublishToBlobFeed)
56
+ /p:OfficialBuildId=$(BUILD.BUILDNUMBER)
57
+ /p:PublishToSymbolServer=true
58
+ /p:DotNetSymbolServerTokenMsdl=$(microsoft-symbol-server-pat)
59
+ /p:DotNetSymbolServerTokenSymWeb=$(symweb-symbol-server-pat)
60
+ - name : _DotNetArtifactsCategory
61
+ value : .NETCore
62
+ - name : _PublishUsingPipelines
63
+ value : true
64
+ # else
65
+ - ${{ if or(eq(variables['System.TeamProject'], 'public'), in(variables['Build.Reason'], 'PullRequest')) }} :
66
+ - name : _OfficialBuildArgs
67
+ value : ' '
68
+ strategy :
69
+ matrix :
70
+ ${{ if in(variables['Build.Reason'], 'PullRequest') }} :
71
+ Debug :
72
+ _BuildConfig : Debug
73
+ _SignType : test
74
+ _DotNetPublishToBlobFeed : false
75
+ _BuildArgs :
69
76
70
- Release :
71
- _BuildConfig : Release
72
- # PRs or external builds are not signed.
73
- ${{ if or(eq(variables['System.TeamProject'], 'public'), in(variables['Build.Reason'], 'PullRequest')) }} :
74
- _SignType : test
75
- _DotNetPublishToBlobFeed : false
76
- ${{ if and(ne(variables['System.TeamProject'], 'public'), notin(variables['Build.Reason'], 'PullRequest')) }} :
77
- _SignType : real
78
- _DotNetPublishToBlobFeed : true
79
- _BuildArgs : $(_OfficialBuildArgs)
80
- steps :
81
- - checkout : self
82
- clean : true
83
- - script : eng\common\cibuild.cmd
84
- -configuration $(_BuildConfig)
85
- -prepareMachine
86
- $(_BuildArgs)
87
- displayName : Build and Publish
88
- - task : PublishBuildArtifacts@1
89
- displayName : Upload package artifacts
90
- condition : and(eq(variables['system.pullrequest.isfork'], false), eq(variables['_BuildConfig'], 'Release'))
91
- inputs :
92
- pathtoPublish : artifacts/packages/
93
- artifactName : artifacts
94
- artifactType : Container
95
- parallel : true
96
- - task : PublishBuildArtifacts@1
97
- displayName : Publish Artifact Symbols
98
- condition : and(eq(variables['system.pullrequest.isfork'], false), eq(variables['_BuildConfig'], 'Release'))
99
- inputs :
100
- PathtoPublish : ' $(Build.SourcesDirectory)\artifacts\SymStore\$(_BuildConfig)'
101
- ArtifactName : ' NativeSymbols'
77
+ Release :
78
+ _BuildConfig : Release
79
+ # PRs or external builds are not signed.
80
+ ${{ if or(eq(variables['System.TeamProject'], 'public'), in(variables['Build.Reason'], 'PullRequest')) }} :
81
+ _SignType : test
82
+ _DotNetPublishToBlobFeed : false
83
+ ${{ if and(ne(variables['System.TeamProject'], 'public'), notin(variables['Build.Reason'], 'PullRequest')) }} :
84
+ _SignType : real
85
+ _DotNetPublishToBlobFeed : true
86
+ _BuildArgs : $(_OfficialBuildArgs)
87
+ steps :
88
+ - checkout : self
89
+ clean : true
90
+ - script : eng\common\cibuild.cmd
91
+ -configuration $(_BuildConfig)
92
+ -prepareMachine
93
+ $(_BuildArgs)
94
+ displayName : Build and Publish
95
+ - task : PublishBuildArtifacts@1
96
+ displayName : Upload package artifacts
97
+ condition : and(eq(variables['system.pullrequest.isfork'], false), eq(variables['_BuildConfig'], 'Release'))
98
+ inputs :
99
+ pathtoPublish : artifacts/packages/
100
+ artifactName : artifacts
101
+ artifactType : Container
102
+ parallel : true
103
+ - task : PublishBuildArtifacts@1
104
+ displayName : Publish Artifact Symbols
105
+ condition : and(eq(variables['system.pullrequest.isfork'], false), eq(variables['_BuildConfig'], 'Release'))
106
+ inputs :
107
+ PathtoPublish : ' $(Build.SourcesDirectory)\artifacts\SymStore\$(_BuildConfig)'
108
+ ArtifactName : ' NativeSymbols'
102
109
103
- - job : Ubuntu_16_04
104
- displayName : ' Ubuntu 16.04'
105
- pool :
106
- name : Hosted Ubuntu 1604
107
- strategy :
108
- matrix :
109
- ${{ if in(variables['Build.Reason'], 'PullRequest') }} :
110
- Debug :
111
- _BuildConfig : Debug
110
+ - job : Ubuntu_16_04
111
+ displayName : ' Ubuntu 16.04'
112
+ pool :
113
+ name : Hosted Ubuntu 1604
114
+ strategy :
115
+ matrix :
116
+ ${{ if in(variables['Build.Reason'], 'PullRequest') }} :
117
+ Debug :
118
+ _BuildConfig : Debug
119
+ _SignType : none
120
+ _DotNetPublishToBlobFeed : false
121
+ Release :
122
+ _BuildConfig : Release
112
123
_SignType : none
113
124
_DotNetPublishToBlobFeed : false
114
- Release :
115
- _BuildConfig : Release
116
- _SignType : none
117
- _DotNetPublishToBlobFeed : false
118
- steps :
119
- - checkout : self
120
- clean : true
121
- - script : eng/common/cibuild.sh
122
- --configuration $(_BuildConfig)
123
- --prepareMachine
124
- displayName : Build
125
+ steps :
126
+ - checkout : self
127
+ clean : true
128
+ - script : eng/common/cibuild.sh
129
+ --configuration $(_BuildConfig)
130
+ --prepareMachine
131
+ displayName : Build
125
132
126
- - job : OSX_10_13
127
- displayName : ' OSX'
128
- pool :
129
- name : Hosted macOS
130
- vmImage : macOS-10.13
131
- strategy :
132
- matrix :
133
- ${{ if in(variables['Build.Reason'], 'PullRequest') }} :
134
- Debug :
135
- _BuildConfig : Debug
133
+ - job : OSX_10_13
134
+ displayName : ' OSX'
135
+ pool :
136
+ name : Hosted macOS
137
+ vmImage : macOS-10.13
138
+ strategy :
139
+ matrix :
140
+ ${{ if in(variables['Build.Reason'], 'PullRequest') }} :
141
+ Debug :
142
+ _BuildConfig : Debug
143
+ _SignType : none
144
+ _DotNetPublishToBlobFeed : false
145
+ Release :
146
+ _BuildConfig : Release
136
147
_SignType : none
137
148
_DotNetPublishToBlobFeed : false
138
- Release :
139
- _BuildConfig : Release
140
- _SignType : none
141
- _DotNetPublishToBlobFeed : false
142
- steps :
143
- - checkout : self
144
- clean : true
145
- - script : eng/common/cibuild.sh
146
- --configuration $(_BuildConfig)
147
- --prepareMachine
148
- displayName : Build
149
+ steps :
150
+ - checkout : self
151
+ clean : true
152
+ - script : eng/common/cibuild.sh
153
+ --configuration $(_BuildConfig)
154
+ --prepareMachine
155
+ displayName : Build
0 commit comments