@@ -38,6 +38,19 @@ variables:
38
38
value : ' '
39
39
- name : _SignType
40
40
value : ' '
41
+ - name : _InternalRuntimeDownloadArgs
42
+ value : ' '
43
+ - name : _InternalRuntimeDownloadCodeSignArgs
44
+ value : ' '
45
+ - ${{ if eq(variables['System.TeamProject'], 'internal') }} :
46
+ - group : DotNet-MSRC-Storage
47
+ - name : _InternalRuntimeDownloadArgs
48
+ value : -DotNetRuntimeSourceFeed https://dotnetclimsrc.blob.core.windows.net/dotnet -DotNetRuntimeSourceFeedKey $(dotnetclimsrc-read-sas-token-base64) /p:DotNetAssetRootAccessTokenSuffix='$(dotnetclimsrc-read-sas-token-base64)'
49
+ # The code signing doesn't use the aspnet build scripts, so the msbuild parameers have
50
+ # to be passed directly. This is awkward, since we pass the same info above, but we have
51
+ # to have it in two different forms
52
+ - name : _InternalRuntimeDownloadCodeSignArgs
53
+ value : /p:DotNetRuntimeSourceFeed=https://dotnetclimsrc.blob.core.windows.net/dotnet /p:DotNetRuntimeSourceFeedKey=$(dotnetclimsrc-read-sas-token-base64)
41
54
- ${{ if eq(variables['System.TeamProject'], 'internal') }} :
42
55
- ${{ if ne(variables['Build.Reason'], 'PullRequest') }} :
43
56
# DotNet-Blob-Feed provides: dotnetfeed-storage-access-key-1
@@ -81,7 +94,15 @@ stages:
81
94
jobDisplayName : Code check
82
95
agentOs : Windows
83
96
steps :
84
- - powershell : ./eng/scripts/CodeCheck.ps1 -ci
97
+ - ${{ if ne(variables['System.TeamProject'], 'public') }} :
98
+ - task : PowerShell@2
99
+ displayName : Setup Private Feeds Credentials
100
+ inputs :
101
+ filePath : $(Build.SourcesDirectory)/eng/common/SetupNugetSources.ps1
102
+ arguments : -ConfigFile $(Build.SourcesDirectory)/NuGet.config -Password $Env:Token
103
+ env :
104
+ Token : $(dn-bot-dnceng-artifact-feeds-rw)
105
+ - powershell : ./eng/scripts/CodeCheck.ps1 -ci $(_InternalRuntimeDownloadArgs)
85
106
displayName : Run eng/scripts/CodeCheck.ps1
86
107
artifacts :
87
108
- name : Code_Check_Logs
@@ -108,6 +129,14 @@ stages:
108
129
# This is intentional to workaround https://github.com/dotnet/arcade/issues/1957 which always re-submits for code-signing, even
109
130
# if they have already been signed. This results in slower builds due to re-submitting the same .nupkg many times for signing.
110
131
# The sign settings have been configured to
132
+ - ${{ if ne(variables['System.TeamProject'], 'public') }} :
133
+ - task : PowerShell@2
134
+ displayName : Setup Private Feeds Credentials
135
+ inputs :
136
+ filePath : $(Build.SourcesDirectory)/eng/common/SetupNugetSources.ps1
137
+ arguments : -ConfigFile $(Build.SourcesDirectory)/NuGet.config -Password $Env:Token
138
+ env :
139
+ Token : $(dn-bot-dnceng-artifact-feeds-rw)
111
140
112
141
- script : ./build.cmd
113
142
-ci
@@ -117,6 +146,7 @@ stages:
117
146
-buildNative
118
147
/bl:artifacts/log/build.x64.binlog
119
148
$(_BuildArgs)
149
+ $(_InternalRuntimeDownloadArgs)
120
150
displayName : Build x64
121
151
122
152
# Build the x86 shared framework
@@ -132,6 +162,7 @@ stages:
132
162
/p:OnlyPackPlatformSpecificPackages=true
133
163
/bl:artifacts/log/build.x86.binlog
134
164
$(_BuildArgs)
165
+ $(_InternalRuntimeDownloadArgs)
135
166
displayName : Build x86
136
167
137
168
# This is in a separate build step with -forceCoreMsbuild to workaround MAX_PATH limitations - https://github.com/Microsoft/msbuild/issues/53
@@ -140,6 +171,7 @@ stages:
140
171
-pack
141
172
-noBuildDeps
142
173
$(_BuildArgs)
174
+ $(_InternalRuntimeDownloadArgs)
143
175
displayName : Build SiteExtension
144
176
145
177
# This runs code-signing on all packages, zips, and jar files as defined in build/CodeSign.targets. If https://github.com/dotnet/arcade/issues/1957 is resolved,
@@ -165,6 +197,7 @@ stages:
165
197
/p:AssetManifestFileName=aspnetcore-win-x64-x86.xml
166
198
$(_BuildArgs)
167
199
$(_PublishArgs)
200
+ $(_InternalRuntimeDownloadArgs)
168
201
/p:PublishInstallerBaseVersion=true
169
202
displayName : Build Installers
170
203
@@ -205,6 +238,7 @@ stages:
205
238
/p:AssetManifestFileName=aspnetcore-win-arm.xml
206
239
$(_BuildArgs)
207
240
$(_PublishArgs)
241
+ $(_InternalRuntimeDownloadArgs)
208
242
installNodeJs : false
209
243
installJdk : false
210
244
artifacts :
@@ -231,6 +265,7 @@ stages:
231
265
-p:AssetManifestFileName=aspnetcore-MacOS_x64.xml
232
266
$(_BuildArgs)
233
267
$(_PublishArgs)
268
+ $(_InternalRuntimeDownloadArgs)
234
269
installNodeJs : false
235
270
installJdk : false
236
271
artifacts :
@@ -251,6 +286,14 @@ stages:
251
286
jobDisplayName : " Build: Linux x64"
252
287
agentOs : Linux
253
288
steps :
289
+ - ${{ if ne(variables['System.TeamProject'], 'public') }} :
290
+ - task : Bash@3
291
+ displayName : Setup Private Feeds Credentials
292
+ inputs :
293
+ filePath : $(Build.SourcesDirectory)/eng/common/SetupNugetSources.sh
294
+ arguments : $(Build.SourcesDirectory)/NuGet.config $Token
295
+ env :
296
+ Token : $(dn-bot-dnceng-artifact-feeds-rw)
254
297
- script : ./build.sh
255
298
--ci
256
299
--arch x64
@@ -261,6 +304,7 @@ stages:
261
304
-p:OnlyPackPlatformSpecificPackages=true
262
305
-bl:artifacts/log/build.linux-x64.binlog
263
306
$(_BuildArgs)
307
+ $(_InternalRuntimeDownloadArgs)
264
308
displayName : Run build.sh
265
309
- script : |
266
310
git clean -xfd src/**/obj/
@@ -274,7 +318,8 @@ stages:
274
318
-p:BuildRuntimeArchive=false \
275
319
-p:LinuxInstallerType=deb \
276
320
-bl:artifacts/log/build.deb.binlog \
277
- $(_BuildArgs)
321
+ $(_BuildArgs) \
322
+ $(_InternalRuntimeDownloadArgs)
278
323
displayName: Build Debian installers
279
324
- script : |
280
325
git clean -xfd src/**/obj/
@@ -290,7 +335,8 @@ stages:
290
335
-bl:artifacts/log/build.rpm.binlog \
291
336
-p:AssetManifestFileName=aspnetcore-Linux_x64.xml \
292
337
$(_BuildArgs) \
293
- $(_PublishArgs)
338
+ $(_PublishArgs) \
339
+ $(_InternalRuntimeDownloadArgs)
294
340
displayName: Build RPM installers
295
341
installNodeJs : false
296
342
installJdk : false
@@ -322,6 +368,7 @@ stages:
322
368
-p:AssetManifestFileName=aspnetcore-Linux_arm.xml
323
369
$(_BuildArgs)
324
370
$(_PublishArgs)
371
+ $(_InternalRuntimeDownloadArgs)
325
372
installNodeJs : false
326
373
installJdk : false
327
374
artifacts :
@@ -352,6 +399,7 @@ stages:
352
399
-p:AssetManifestFileName=aspnetcore-Linux_arm64.xml
353
400
$(_BuildArgs)
354
401
$(_PublishArgs)
402
+ $(_InternalRuntimeDownloadArgs)
355
403
installNodeJs : false
356
404
installJdk : false
357
405
artifacts :
@@ -385,6 +433,7 @@ stages:
385
433
-p:AssetManifestFileName=aspnetcore-Linux_musl_x64.xml
386
434
$(_BuildArgs)
387
435
$(_PublishArgs)
436
+ $(_InternalRuntimeDownloadArgs)
388
437
installNodeJs : false
389
438
installJdk : false
390
439
artifacts :
@@ -418,6 +467,7 @@ stages:
418
467
-p:AssetManifestFileName=aspnetcore-Linux_musl_arm64.xml
419
468
$(_BuildArgs)
420
469
$(_PublishArgs)
470
+ $(_InternalRuntimeDownloadArgs)
421
471
installNodeJs : false
422
472
installJdk : false
423
473
artifacts :
@@ -439,7 +489,7 @@ stages:
439
489
jobDisplayName : " Test: Windows Server 2016 x64"
440
490
agentOs : Windows
441
491
isTestingJob : true
442
- buildArgs : -all -pack -test -BuildNative "/p:SkipIISNewHandlerTests=true /p:SkipIISTests=true /p:SkipIISExpressTests=true /p:SkipIISNewShimTests=true /p:RunTemplateTests=false"
492
+ buildArgs : -all -pack -test -BuildNative "/p:SkipIISNewHandlerTests=true /p:SkipIISTests=true /p:SkipIISExpressTests=true /p:SkipIISNewShimTests=true /p:RunTemplateTests=false" $(_InternalRuntimeDownloadArgs)
443
493
beforeBuild :
444
494
- powershell : " & ./src/Servers/IIS/tools/UpdateIISExpressCertificate.ps1; & ./src/Servers/IIS/tools/update_schema.ps1"
445
495
displayName : Setup IISExpress test certificates and schema
@@ -475,7 +525,15 @@ stages:
475
525
agentOs : Windows
476
526
isTestingJob : true
477
527
steps :
478
- - script : ./build.cmd -ci -all -pack
528
+ - ${{ if ne(variables['System.TeamProject'], 'public') }} :
529
+ - task : PowerShell@2
530
+ displayName : Setup Private Feeds Credentials
531
+ inputs :
532
+ filePath : $(Build.SourcesDirectory)/eng/common/SetupNugetSources.ps1
533
+ arguments : -ConfigFile $(Build.SourcesDirectory)/NuGet.config -Password $Env:Token
534
+ env :
535
+ Token : $(dn-bot-dnceng-artifact-feeds-rw)
536
+ - script : ./build.cmd -ci -all -pack $(_InternalRuntimeDownloadArgs)
479
537
displayName : Build Repo
480
538
- script : ./src/ProjectTemplates/build.cmd -ci -pack -NoRestore -NoBuilddeps "/p:RunTemplateTests=true /bl:artifacts/log/template.pack.binlog"
481
539
displayName : Pack Templates
@@ -502,7 +560,7 @@ stages:
502
560
jobDisplayName : " Test: macOS 10.13"
503
561
agentOs : macOS
504
562
isTestingJob : true
505
- buildArgs : --all --test "/p:RunTemplateTests=false"
563
+ buildArgs : --all --test "/p:RunTemplateTests=false" $(_InternalRuntimeDownloadArgs)
506
564
beforeBuild :
507
565
- bash : " ./eng/scripts/install-nginx-mac.sh"
508
566
displayName : Installing Nginx
@@ -537,7 +595,7 @@ stages:
537
595
jobDisplayName : " Test: Ubuntu 16.04 x64"
538
596
agentOs : Linux
539
597
isTestingJob : true
540
- buildArgs : --all --test "/p:RunTemplateTests=false"
598
+ buildArgs : --all --test "/p:RunTemplateTests=false" $(_InternalRuntimeDownloadArgs)
541
599
beforeBuild :
542
600
- bash : " ./eng/scripts/install-nginx-linux.sh"
543
601
displayName : Installing Nginx
@@ -584,6 +642,25 @@ stages:
584
642
chmod +x $HOME/bin/jq
585
643
echo "##vso[task.prependpath]$HOME/bin"
586
644
displayName: Install jq
645
+ - task : UseDotNet@2
646
+ displayName : ' Use .NET Core sdk'
647
+ inputs :
648
+ packageType : sdk
649
+ # The SDK version selected here is intentionally supposed to use the latest release
650
+ # For the purpose of building Linux distros, we can't depend on features of the SDK
651
+ # which may not exist in pre-built versions of the SDK
652
+ # Pinning to preview 8 since preview 9 has breaking changes
653
+ version : 3.1.100
654
+ installationPath : $(DotNetCoreSdkDir)
655
+ includePreviewVersions : true
656
+ - ${{ if ne(variables['System.TeamProject'], 'public') }} :
657
+ - task : Bash@3
658
+ displayName : Setup Private Feeds Credentials
659
+ inputs :
660
+ filePath : $(Build.SourcesDirectory)/eng/common/SetupNugetSources.sh
661
+ arguments : $(Build.SourcesDirectory)/NuGet.config $Token
662
+ env :
663
+ Token : $(dn-bot-dnceng-artifact-feeds-rw)
587
664
- script : ./eng/scripts/ci-source-build.sh --ci --configuration Release /p:BuildManaged=true /p:BuildNodeJs=false
588
665
displayName : Run ci-source-build.sh
589
666
- task : PublishBuildArtifacts@1
0 commit comments