@@ -29,7 +29,31 @@ variables:
29
29
- ${{ if or(eq(variables['System.TeamProject'], 'public'), in(variables['Build.Reason'], 'PullRequest')) }} :
30
30
- name : _BuildArgs
31
31
value : ' '
32
+
32
33
jobs :
34
+ # Build Web.JS
35
+ - template : jobs/default-build.yml
36
+ parameters :
37
+ codeSign : true
38
+ jobName : WebJS_build
39
+ jobDisplayName : " Build: Web.JS"
40
+ agentOs : Linux
41
+ steps :
42
+ - script : ./build.sh
43
+ --ci
44
+ --projects $(Build.SourcesDirectory)/src/Components/Web.JS/Microsoft.AspNetCore.Components.Web.JS.npmproj
45
+ -bl:artifacts/log/build.linux-x64.binlog
46
+ $(_BuildArgs)
47
+ displayName : Run build.sh
48
+ - publish : src/Components/Web.JS/dist/
49
+ artifact : WebJS_Javascript
50
+ installJdk : false
51
+ artifacts :
52
+ - name : WebJS_Logs
53
+ path : artifacts/log/
54
+ publishOnError : true
55
+
56
+ # Code check
33
57
- template : jobs/default-build.yml
34
58
parameters :
35
59
jobName : Code_check
@@ -38,10 +62,16 @@ jobs:
38
62
steps :
39
63
- powershell : ./eng/scripts/CodeCheck.ps1 -ci
40
64
displayName : Run eng/scripts/CodeCheck.ps1
65
+ artifacts :
66
+ - name : Code_Check_Logs
67
+ path : artifacts/log/
68
+ publishOnError : true
41
69
42
70
# Build Windows (x64/x86)
43
71
- template : jobs/default-build.yml
44
72
parameters :
73
+ dependsOn :
74
+ - WebJS_build
45
75
codeSign : true
46
76
jobName : Windows_build
47
77
jobDisplayName : " Build: Windows x64/x86"
53
83
- script : " echo ##vso[build.addbuildtag]release-candidate"
54
84
condition : and(ne(variables['Build.Reason'], 'PullRequest'), in(variables['DotNetFinalVersionKind'], 'release', 'prerelease'))
55
85
displayName : ' Set CI tags'
86
+ - task : DownloadPipelineArtifact@2
87
+ inputs :
88
+ artifact : WebJS_Javascript
89
+ path : $(Build.SourcesDirectory)/src/Components/Web.JS/dist/
56
90
# !!! NOTE !!! Some of these steps have disabled code signing.
57
91
# This is intentional to workaround https://github.com/dotnet/arcade/issues/1957 which always re-submits for code-signing, even
58
92
# if they have already been signed. This results in slower builds due to re-submitting the same .nupkg many times for signing.
@@ -130,10 +164,17 @@ jobs:
130
164
# Build Windows ARM
131
165
- template : jobs/default-build.yml
132
166
parameters :
167
+ dependsOn :
168
+ - WebJS_build
133
169
codeSign : true
134
170
jobName : Windows_arm_build
135
171
jobDisplayName : " Build: Windows ARM"
136
172
agentOs : Windows
173
+ beforeBuild :
174
+ - task : DownloadPipelineArtifact@2
175
+ inputs :
176
+ artifact : WebJS_Javascript
177
+ path : $(Build.SourcesDirectory)/src/Components/Web.JS/dist/
137
178
buildArgs :
138
179
-arch arm
139
180
-sign
@@ -159,9 +200,16 @@ jobs:
159
200
# Build MacOS
160
201
- template : jobs/default-build.yml
161
202
parameters :
203
+ dependsOn :
204
+ - WebJS_build
162
205
jobName : MacOs_x64_build
163
206
jobDisplayName : " Build: macOS"
164
207
agentOs : macOs
208
+ beforeBuild :
209
+ - task : DownloadPipelineArtifact@2
210
+ inputs :
211
+ artifact : WebJS_Javascript
212
+ path : $(Build.SourcesDirectory)/src/Components/Web.JS/dist/
165
213
buildArgs :
166
214
--pack
167
215
--all
@@ -171,6 +219,7 @@ jobs:
171
219
-bl:artifacts/log/build.macos.binlog
172
220
$(_BuildArgs)
173
221
installNodeJs : false
222
+ installJdk : false
174
223
artifacts :
175
224
- name : MacOS_x64_Packages
176
225
path : artifacts/packages/
@@ -188,11 +237,16 @@ jobs:
188
237
# Build Linux x64
189
238
- template : jobs/default-build.yml
190
239
parameters :
240
+ dependsOn :
241
+ - WebJS_build
191
242
jobName : Linux_x64_build
192
243
jobDisplayName : " Build: Linux x64"
193
244
agentOs : Linux
194
- installNodeJs : false
195
245
steps :
246
+ - task : DownloadPipelineArtifact@2
247
+ inputs :
248
+ artifact : WebJS_Javascript
249
+ path : $(Build.SourcesDirectory)/src/Components/Web.JS/dist/
196
250
- script : ./build.sh
197
251
--ci
198
252
--arch x64
@@ -211,6 +265,7 @@ jobs:
211
265
--arch x64 \
212
266
--build-installers \
213
267
--no-build-deps \
268
+ --no-build-nodejs \
214
269
-p:OnlyPackPlatformSpecificPackages=true \
215
270
-p:BuildRuntimeArchive=false \
216
271
-p:LinuxInstallerType=deb \
@@ -224,12 +279,15 @@ jobs:
224
279
--arch x64 \
225
280
--build-installers \
226
281
--no-build-deps \
282
+ --no-build-nodejs \
227
283
-p:OnlyPackPlatformSpecificPackages=true \
228
284
-p:BuildRuntimeArchive=false \
229
285
-p:LinuxInstallerType=rpm \
230
286
-bl:artifacts/log/build.rpm.binlog \
231
287
$(_BuildArgs)
232
288
displayName: Build RPM installers
289
+ installNodeJs : false
290
+ installJdk : false
233
291
artifacts :
234
292
- name : Linux_x64_Packages
235
293
path : artifacts/packages/
@@ -247,9 +305,16 @@ jobs:
247
305
# Build Linux ARM
248
306
- template : jobs/default-build.yml
249
307
parameters :
308
+ dependsOn :
309
+ - WebJS_build
250
310
jobName : Linux_arm_build
251
311
jobDisplayName : " Build: Linux ARM"
252
312
agentOs : Linux
313
+ beforeBuild :
314
+ - task : DownloadPipelineArtifact@2
315
+ inputs :
316
+ artifact : WebJS_Javascript
317
+ path : $(Build.SourcesDirectory)/src/Components/Web.JS/dist/
253
318
buildArgs :
254
319
--arch arm
255
320
--pack
@@ -260,6 +325,7 @@ jobs:
260
325
-bl:artifacts/log/build.linux-arm.binlog
261
326
$(_BuildArgs)
262
327
installNodeJs : false
328
+ installJdk : false
263
329
artifacts :
264
330
- name : Linux_arm_Packages
265
331
path : artifacts/packages/
@@ -277,9 +343,16 @@ jobs:
277
343
# Build Linux ARM64
278
344
- template : jobs/default-build.yml
279
345
parameters :
346
+ dependsOn :
347
+ - WebJS_build
280
348
jobName : Linux_arm64_build
281
349
jobDisplayName : " Build: Linux ARM64"
282
350
agentOs : Linux
351
+ beforeBuild :
352
+ - task : DownloadPipelineArtifact@2
353
+ inputs :
354
+ artifact : WebJS_Javascript
355
+ path : $(Build.SourcesDirectory)/src/Components/Web.JS/dist/
283
356
buildArgs :
284
357
--arch arm64
285
358
--all
@@ -290,6 +363,7 @@ jobs:
290
363
-bl:artifacts/log/build.arm64.binlog
291
364
$(_BuildArgs)
292
365
installNodeJs : false
366
+ installJdk : false
293
367
artifacts :
294
368
- name : Linux_arm64_Packages
295
369
path : artifacts/packages/
@@ -307,9 +381,16 @@ jobs:
307
381
# Build Linux Musl x64
308
382
- template : jobs/default-build.yml
309
383
parameters :
384
+ dependsOn :
385
+ - WebJS_build
310
386
jobName : Linux_musl_x64_build
311
387
jobDisplayName : " Build: Linux Musl x64"
312
388
agentOs : Linux
389
+ beforeBuild :
390
+ - task : DownloadPipelineArtifact@2
391
+ inputs :
392
+ artifact : WebJS_Javascript
393
+ path : $(Build.SourcesDirectory)/src/Components/Web.JS/dist/
313
394
buildScript : ./dockerbuild.sh alpine
314
395
buildArgs :
315
396
--ci
@@ -323,6 +404,7 @@ jobs:
323
404
-bl:artifacts/log/build.musl.binlog
324
405
$(_BuildArgs)
325
406
installNodeJs : false
407
+ installJdk : false
326
408
artifacts :
327
409
- name : Linux_musl_x64_Packages
328
410
path : artifacts/packages/
@@ -337,12 +419,19 @@ jobs:
337
419
parameters :
338
420
inputName : Linux_musl_x64
339
421
340
- # Build Linux Musl arm64
422
+ # Build Linux Musl ARM64
341
423
- template : jobs/default-build.yml
342
424
parameters :
425
+ dependsOn :
426
+ - WebJS_build
343
427
jobName : Linux_musl_arm64_build
344
428
jobDisplayName : " Build: Linux Musl ARM64"
345
429
agentOs : Linux
430
+ beforeBuild :
431
+ - task : DownloadPipelineArtifact@2
432
+ inputs :
433
+ artifact : WebJS_Javascript
434
+ path : $(Build.SourcesDirectory)/src/Components/Web.JS/dist/
346
435
buildScript : ./dockerbuild.sh ubuntu-alpine37
347
436
buildArgs :
348
437
--ci
@@ -356,6 +445,7 @@ jobs:
356
445
-bl:artifacts/log/build.musl.binlog
357
446
$(_BuildArgs)
358
447
installNodeJs : false
448
+ installJdk : false
359
449
artifacts :
360
450
- name : Linux_musl_arm64_Packages
361
451
path : artifacts/packages/
@@ -373,6 +463,8 @@ jobs:
373
463
# Test jobs
374
464
- template : jobs/default-build.yml
375
465
parameters :
466
+ dependsOn :
467
+ - WebJS_build
376
468
condition : ne(variables['SkipTests'], 'true')
377
469
jobName : Windows_Test
378
470
jobDisplayName : " Test: Windows Server 2016 x64"
@@ -382,6 +474,10 @@ jobs:
382
474
beforeBuild :
383
475
- powershell : " & ./src/Servers/IIS/tools/UpdateIISExpressCertificate.ps1; & ./src/Servers/IIS/tools/update_schema.ps1"
384
476
displayName : Setup IISExpress test certificates and schema
477
+ - task : DownloadPipelineArtifact@2
478
+ inputs :
479
+ artifact : WebJS_Javascript
480
+ path : $(Build.SourcesDirectory)/src/Components/Web.JS/dist/
385
481
afterBuild :
386
482
- powershell : " & ./build.ps1 -CI -NoBuild -Test /p:RunFlakyTests=true"
387
483
displayName : Run Flaky Tests
@@ -396,12 +492,18 @@ jobs:
396
492
397
493
- template : jobs/default-build.yml
398
494
parameters :
495
+ dependsOn :
496
+ - WebJS_build
399
497
condition : ne(variables['SkipTests'], 'true')
400
498
jobName : Windows_Templates_Test
401
499
jobDisplayName : " Test: Templates - Windows Server 2016 x64"
402
500
agentOs : Windows
403
501
isTestingJob : true
404
502
steps :
503
+ - task : DownloadPipelineArtifact@2
504
+ inputs :
505
+ artifact : WebJS_Javascript
506
+ path : $(Build.SourcesDirectory)/src/Components/Web.JS/dist/
405
507
- script : ./build.cmd -ci -all -pack
406
508
displayName : Build Repo
407
509
- script : ./src/ProjectTemplates/build.cmd -ci -pack -NoRestore -NoBuilddeps "/p:RunTemplateTests=true /bl:artifacts/log/template.pack.binlog"
@@ -418,6 +520,8 @@ jobs:
418
520
419
521
- template : jobs/default-build.yml
420
522
parameters :
523
+ dependsOn :
524
+ - WebJS_build
421
525
condition : ne(variables['SkipTests'], 'true')
422
526
jobName : MacOs_Test
423
527
jobDisplayName : " Test: macOS 10.13"
@@ -427,6 +531,10 @@ jobs:
427
531
beforeBuild :
428
532
- bash : " ./eng/scripts/install-nginx-mac.sh"
429
533
displayName : Installing Nginx
534
+ - task : DownloadPipelineArtifact@2
535
+ inputs :
536
+ artifact : WebJS_Javascript
537
+ path : $(Build.SourcesDirectory)/src/Components/Web.JS/dist/
430
538
afterBuild :
431
539
- bash : ./build.sh --ci --pack --no-build --no-restore --no-build-deps "/bl:artifacts/log/packages.pack.binlog"
432
540
displayName : Pack Packages (for Template tests)
@@ -445,6 +553,8 @@ jobs:
445
553
446
554
- template : jobs/default-build.yml
447
555
parameters :
556
+ dependsOn :
557
+ - WebJS_build
448
558
condition : ne(variables['SkipTests'], 'true')
449
559
jobName : Linux_Test
450
560
jobDisplayName : " Test: Ubuntu 16.04 x64"
@@ -456,6 +566,10 @@ jobs:
456
566
displayName : Installing Nginx
457
567
- bash : " echo fs.inotify.max_user_watches=524288 | sudo tee -a /etc/sysctl.conf && sudo sysctl -p"
458
568
displayName : Increase inotify limit
569
+ - task : DownloadPipelineArtifact@2
570
+ inputs :
571
+ artifact : WebJS_Javascript
572
+ path : $(Build.SourcesDirectory)/src/Components/Web.JS/dist/
459
573
afterBuild :
460
574
- bash : ./build.sh --ci --pack --no-build --no-restore --no-build-deps "/bl:artifacts/log/packages.pack.binlog"
461
575
displayName : Pack Packages (for Template tests)
@@ -489,6 +603,10 @@ jobs:
489
603
chmod +x $HOME/bin/jq
490
604
echo "##vso[task.prependpath]$HOME/bin"
491
605
displayName: Install jq
606
+ - task : NodeTool@0
607
+ displayName : Install Node 10.x
608
+ inputs :
609
+ versionSpec : 10.x
492
610
- task : UseDotNet@2
493
611
displayName : ' Use .NET Core sdk'
494
612
inputs :
0 commit comments