Skip to content

Commit 163116d

Browse files
dougbudotnet-maestro[bot]wtgodbeViktorHofer
committed
Port -nobl and net5.0 changes from 'master'
* Update dependencies from https://github.com/dotnet/arcade build 20200511.9 - Microsoft.DotNet.Arcade.Sdk: 5.0.0-beta.20228.4 => 5.0.0-beta.20261.9 - Microsoft.DotNet.GenAPI: 5.0.0-beta.20228.4 => 5.0.0-beta.20261.9 - Microsoft.DotNet.Helix.Sdk: 5.0.0-beta.20228.4 => 5.0.0-beta.20261.9 * Pre-emptively take -nobl change * Disable binlogs in CI * Fix build.sh to know about -nobl * Align build.ps1|sh with latest Arcade parameters - do not enable binary logs by default in CI builds - leave `-binaryLog` and `-excludeCIBinaryLog` handling to eng/common/tools.ps1|sh - was unnecessary since `-bl /bl:{some name}` worked fine, ignoring OOMs nit: document `-excludeCIBinarylog` a bit more * Do not pass unknown options into CodeCheck.ps1 * Pass `-ci -nobl` into remaining CI build jobs * Switch default TFM to `net5.0` * Update missing project templates tfms * Add more `-ci -nobl` - needed because _all_ builds in the pipeline are implicitly CI builds - default-build.yml adds `-ci` when script wasn't explicit * Default templates to net5.0 * PR feedback * Update TFMs in explicit .nuspec files * Update TFMs in test projects * Update TFMs in test C# code * Update TFMs in infrastructure files * Future-proof a check for `net5.0` or later - avoid comparisons involving `$(TargetFramework)` in .targets files - fine to compare it with `''` or `$(DefaultNetCoreTargetFramework)` * !fixup! Undo a couple of earlier fixes - remove a duplicate `$()` setting - correct the one remaining versioned `#if` define - did not make it `#if NETCOREAPP` because benchmarks test numerous .NET Core TFMs * Disable binary logs in CodeCheck.ps1 * Specify `-ci -nobl` just once when using `parameters.buildArgs` * Restore `$binaryLog` default logic This cherry-picks most of d5849f3 into this branch - [master] Update dependencies from dotnet/arcade dotnet/aspnetcore-tooling (#21630) - does not include dotnet/aspnetcore-tooling updates Co-authored-by: dotnet-maestro[bot] <42748379+dotnet-maestro[bot]@users.noreply.github.com> Co-authored-by: Will Godbe <[email protected]> Co-authored-by: Viktor Hofer <[email protected]>
1 parent b67d161 commit 163116d

File tree

93 files changed

+386
-246
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

93 files changed

+386
-246
lines changed

.azure/pipelines/benchmarks.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ jobs:
1212
jobName: Windows_Build
1313
jobDisplayName: "Build only : Windows"
1414
agentOs: Windows
15-
buildArgs: -ci -all -pack
15+
buildArgs: -all -pack
1616
artifacts:
1717
- path: artifacts/
1818
includeForks: true

.azure/pipelines/ci.yml

Lines changed: 27 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -129,10 +129,10 @@ stages:
129129
# The sign settings have been configured to
130130
- script: ./build.cmd
131131
-ci
132+
-nobl
132133
-arch x64
133134
-pack
134135
-all
135-
/bl:artifacts/log/build.x64.binlog
136136
$(_BuildArgs)
137137
$(_InternalRuntimeDownloadArgs)
138138
displayName: Build x64
@@ -141,19 +141,20 @@ stages:
141141
# This is going to actually build x86 native assets.
142142
- script: ./build.cmd
143143
-ci
144+
-nobl
144145
-arch x86
145146
-pack
146147
-all
147148
-noBuildJava
148149
/p:OnlyPackPlatformSpecificPackages=true
149-
/bl:artifacts/log/build.x86.binlog
150150
$(_BuildArgs)
151151
$(_InternalRuntimeDownloadArgs)
152152
displayName: Build x86
153153

154154
# This is in a separate build step with -forceCoreMsbuild to workaround MAX_PATH limitations - https://github.com/Microsoft/msbuild/issues/53
155155
- script: .\src\SiteExtensions\build.cmd
156156
-ci
157+
-nobl
157158
-pack
158159
-noBuildDeps
159160
$(_BuildArgs)
@@ -166,20 +167,20 @@ stages:
166167
# Sign check is disabled because it is run in a separate step below, after installers are built.
167168
- script: ./build.cmd
168169
-ci
170+
-nobl
169171
-noBuild
170172
-noRestore
171173
-sign
172-
/bl:artifacts/log/build.codesign.binlog
173174
/p:DotNetSignType=$(_SignType)
174175
$(_BuildArgs)
175176
displayName: Code sign packages
176177

177178
# Windows installers bundle both x86 and x64 assets
178179
- script: ./build.cmd
179180
-ci
181+
-nobl
180182
-sign
181183
-buildInstallers
182-
/bl:artifacts/log/installers.msbuild.binlog
183184
/p:DotNetSignType=$(_SignType)
184185
/p:AssetManifestFileName=aspnetcore-win-x64-x86.xml
185186
$(_BuildArgs)
@@ -219,7 +220,6 @@ stages:
219220
-pack
220221
-noBuildNodeJS
221222
-noBuildJava
222-
/bl:artifacts/log/build.win-arm.binlog
223223
/p:DotNetSignType=$(_SignType)
224224
/p:OnlyPackPlatformSpecificPackages=true
225225
/p:AssetManifestFileName=aspnetcore-win-arm.xml
@@ -249,7 +249,6 @@ stages:
249249
-pack
250250
-noBuildNodeJS
251251
-noBuildJava
252-
/bl:artifacts/log/build.win-arm64.binlog
253252
/p:DotNetSignType=$(_SignType)
254253
/p:OnlyPackPlatformSpecificPackages=true
255254
/p:AssetManifestFileName=aspnetcore-win-arm64.xml
@@ -280,7 +279,6 @@ stages:
280279
--no-build-nodejs
281280
--no-build-java
282281
-p:OnlyPackPlatformSpecificPackages=true
283-
-bl:artifacts/log/build.macos.binlog
284282
-p:AssetManifestFileName=aspnetcore-MacOS_x64.xml
285283
$(_BuildArgs)
286284
$(_PublishArgs)
@@ -308,43 +306,43 @@ stages:
308306
steps:
309307
- script: ./build.sh
310308
--ci
309+
--nobl
311310
--arch x64
312311
--pack
313312
--all
314313
--no-build-nodejs
315314
--no-build-java
316315
-p:OnlyPackPlatformSpecificPackages=true
317-
-bl:artifacts/log/build.linux-x64.binlog
318316
$(_BuildArgs)
319317
$(_InternalRuntimeDownloadArgs)
320318
displayName: Run build.sh
321319
- script: |
322320
git clean -xfd src/**/obj/
323321
./dockerbuild.sh bionic \
324322
--ci \
323+
--nobl \
325324
--arch x64 \
326325
--build-installers \
327326
--no-build-deps \
328327
--no-build-nodejs \
329328
-p:OnlyPackPlatformSpecificPackages=true \
330329
-p:BuildRuntimeArchive=false \
331330
-p:LinuxInstallerType=deb \
332-
-bl:artifacts/log/build.deb.binlog \
333331
$(_BuildArgs) \
334332
$(_InternalRuntimeDownloadArgs)
335333
displayName: Build Debian installers
336334
- script: |
337335
git clean -xfd src/**/obj/
338336
./dockerbuild.sh rhel \
339337
--ci \
338+
--nobl \
340339
--arch x64 \
341340
--build-installers \
342341
--no-build-deps \
343342
--no-build-nodejs \
344343
-p:OnlyPackPlatformSpecificPackages=true \
345344
-p:BuildRuntimeArchive=false \
346345
-p:LinuxInstallerType=rpm \
347-
-bl:artifacts/log/build.rpm.binlog \
348346
-p:AssetManifestFileName=aspnetcore-Linux_x64.xml \
349347
$(_BuildArgs) \
350348
$(_PublishArgs) \
@@ -376,7 +374,6 @@ stages:
376374
--no-build-nodejs
377375
--no-build-java
378376
-p:OnlyPackPlatformSpecificPackages=true
379-
-bl:artifacts/log/build.linux-arm.binlog
380377
-p:AssetManifestFileName=aspnetcore-Linux_arm.xml
381378
$(_BuildArgs)
382379
$(_PublishArgs)
@@ -407,7 +404,6 @@ stages:
407404
--no-build-nodejs
408405
--no-build-java
409406
-p:OnlyPackPlatformSpecificPackages=true
410-
-bl:artifacts/log/build.arm64.binlog
411407
-p:AssetManifestFileName=aspnetcore-Linux_arm64.xml
412408
$(_BuildArgs)
413409
$(_PublishArgs)
@@ -433,15 +429,13 @@ stages:
433429
agentOs: Linux
434430
buildScript: ./dockerbuild.sh alpine
435431
buildArgs:
436-
--ci
437432
--arch x64
438433
--os-name linux-musl
439434
--pack
440435
--all
441436
--no-build-nodejs
442437
--no-build-java
443438
-p:OnlyPackPlatformSpecificPackages=true
444-
-bl:artifacts/log/build.musl.binlog
445439
-p:AssetManifestFileName=aspnetcore-Linux_musl_x64.xml
446440
$(_BuildArgs)
447441
$(_PublishArgs)
@@ -468,15 +462,13 @@ stages:
468462
useHostedUbuntu: false
469463
buildScript: ./dockerbuild.sh ubuntu-alpine37
470464
buildArgs:
471-
--ci
472465
--arch arm64
473466
--os-name linux-musl
474467
--pack
475468
--all
476469
--no-build-nodejs
477470
--no-build-java
478471
-p:OnlyPackPlatformSpecificPackages=true
479-
-bl:artifacts/log/build.musl.binlog
480472
-p:AssetManifestFileName=aspnetcore-Linux_musl_arm64.xml
481473
$(_BuildArgs)
482474
$(_PublishArgs)
@@ -507,7 +499,7 @@ stages:
507499
- powershell: "& ./src/Servers/IIS/tools/UpdateIISExpressCertificate.ps1; & ./src/Servers/IIS/tools/update_schema.ps1"
508500
displayName: Setup IISExpress test certificates and schema
509501
afterBuild:
510-
- powershell: "& ./build.ps1 -CI -NoBuild -Test /p:RunQuarantinedTests=true"
502+
- powershell: "& ./build.ps1 -CI -nobl -NoBuild -Test /p:RunQuarantinedTests=true"
511503
displayName: Run Quarantined Tests
512504
continueOnError: true
513505
- task: PublishTestResults@2
@@ -538,11 +530,11 @@ stages:
538530
agentOs: Windows
539531
isTestingJob: true
540532
steps:
541-
- script: ./build.cmd -ci -all -pack $(_InternalRuntimeDownloadArgs)
533+
- script: ./build.cmd -ci -nobl -all -pack $(_InternalRuntimeDownloadArgs)
542534
displayName: Build Repo
543-
- script: ./src/ProjectTemplates/build.cmd -ci -pack -NoRestore -NoBuilddeps "/p:RunTemplateTests=true /bl:artifacts/log/template.pack.binlog"
535+
- script: ./src/ProjectTemplates/build.cmd -ci -nobl -pack -NoRestore -NoBuilddeps "/p:RunTemplateTests=true"
544536
displayName: Pack Templates
545-
- script: ./src/ProjectTemplates/build.cmd -ci -test -NoRestore -NoBuild -NoBuilddeps "/p:RunTemplateTests=true /bl:artifacts/log/template.test.binlog"
537+
- script: ./src/ProjectTemplates/build.cmd -ci -nobl -test -NoRestore -NoBuild -NoBuilddeps "/p:RunTemplateTests=true"
546538
displayName: Test Templates
547539
artifacts:
548540
- name: Windows_Test_Templates_Dumps
@@ -570,11 +562,11 @@ stages:
570562
- bash: "./eng/scripts/install-nginx-mac.sh"
571563
displayName: Installing Nginx
572564
afterBuild:
573-
- bash: ./build.sh --ci --pack --no-build --no-restore --no-build-deps "/bl:artifacts/log/packages.pack.binlog"
565+
- bash: ./build.sh --ci --nobl --pack --no-build --no-restore --no-build-deps
574566
displayName: Pack Packages (for Template tests)
575-
- bash: ./src/ProjectTemplates/build.sh --ci --pack --no-restore --no-build-deps "/bl:artifacts/log/template.pack.binlog"
567+
- bash: ./src/ProjectTemplates/build.sh --ci --nobl --pack --no-restore --no-build-deps
576568
displayName: Pack Templates (for Template tests)
577-
- bash: ./build.sh --no-build --ci --test -p:RunQuarantinedTests=true
569+
- bash: ./build.sh --no-build --ci --nobl --test -p:RunQuarantinedTests=true
578570
displayName: Run Quarantined Tests
579571
continueOnError: true
580572
- task: PublishTestResults@2
@@ -608,11 +600,11 @@ stages:
608600
- bash: "echo fs.inotify.max_user_watches=524288 | sudo tee -a /etc/sysctl.conf && sudo sysctl -p"
609601
displayName: Increase inotify limit
610602
afterBuild:
611-
- bash: ./build.sh --ci --pack --no-build --no-restore --no-build-deps "/bl:artifacts/log/packages.pack.binlog"
603+
- bash: ./build.sh --ci --nobl --pack --no-build --no-restore --no-build-deps
612604
displayName: Pack Packages (for Template tests)
613-
- bash: ./src/ProjectTemplates/build.sh --ci --pack --no-restore --no-build-deps "/bl:artifacts/log/template.pack.binlog"
605+
- bash: ./src/ProjectTemplates/build.sh --ci --nobl --pack --no-restore --no-build-deps
614606
displayName: Pack Templates (for Template tests)
615-
- bash: ./build.sh --no-build --ci --test -p:RunQuarantinedTests=true
607+
- bash: ./build.sh --no-build --ci --nobl --test -p:RunQuarantinedTests=true
616608
displayName: Run Quarantined Tests
617609
continueOnError: true
618610
- task: PublishTestResults@2
@@ -641,11 +633,11 @@ stages:
641633
timeoutInMinutes: 180
642634
steps:
643635
# Build the shared framework
644-
- script: ./build.cmd -ci -all -pack -arch x64 /p:ASPNETCORE_TEST_LOG_DIR=artifacts/log /bl:artifacts/log/helix.build.x64.binlog
636+
- script: ./build.cmd -ci -nobl -all -pack -arch x64 /p:ASPNETCORE_TEST_LOG_DIR=artifacts/log
645637
displayName: Build shared fx
646-
- script: .\restore.cmd -ci /p:BuildInteropProjects=true
638+
- script: .\restore.cmd -ci -nobl /p:BuildInteropProjects=true
647639
displayName: Restore interop projects
648-
- script: .\build.cmd -ci -NoRestore -test -all -projects eng\helix\helix.proj /p:IsRequiredCheck=true /p:IsHelixJob=true /p:BuildInteropProjects=true /p:RunTemplateTests=true /p:ASPNETCORE_TEST_LOG_DIR=artifacts/log -bl
640+
- script: .\build.cmd -ci -nobl -NoRestore -test -all -projects eng\helix\helix.proj /p:IsRequiredCheck=true /p:IsHelixJob=true /p:BuildInteropProjects=true /p:RunTemplateTests=true /p:ASPNETCORE_TEST_LOG_DIR=artifacts/log
649641
displayName: Run build.cmd helix target
650642
env:
651643
HelixApiAccessToken: $(HelixApiAccessToken) # Needed for internal queues
@@ -665,11 +657,11 @@ stages:
665657
timeoutInMinutes: 180
666658
steps:
667659
# Build the shared framework
668-
- script: ./build.cmd -ci -all -pack -arch x64 /p:ASPNETCORE_TEST_LOG_DIR=artifacts/log /bl:artifacts/log/helix.daily.build.x64.binlog
660+
- script: ./build.cmd -ci -nobl -all -pack -arch x64 /p:ASPNETCORE_TEST_LOG_DIR=artifacts/log
669661
displayName: Build shared fx
670-
- script: .\restore.cmd -ci /p:BuildInteropProjects=true
662+
- script: .\restore.cmd -ci -nobl /p:BuildInteropProjects=true
671663
displayName: Restore interop projects
672-
- script: .\build.cmd -ci -NoRestore -test -all -projects eng\helix\helix.proj /p:IsHelixJob=true /p:IsHelixDaily=true /p:BuildInteropProjects=true /p:RunTemplateTests=true /p:ASPNETCORE_TEST_LOG_DIR=artifacts/log -bl
664+
- script: .\build.cmd -ci -nobl -NoRestore -test -all -projects eng\helix\helix.proj /p:IsHelixJob=true /p:IsHelixDaily=true /p:BuildInteropProjects=true /p:RunTemplateTests=true /p:ASPNETCORE_TEST_LOG_DIR=artifacts/log
673665
displayName: Run build.cmd helix target
674666
env:
675667
HelixApiAccessToken: $(HelixApiAccessToken) # Needed for internal queues
@@ -690,9 +682,9 @@ stages:
690682
timeoutInMinutes: 180
691683
steps:
692684
# Build the shared framework
693-
- script: ./restore.sh -ci
685+
- script: ./restore.sh -ci -nobl
694686
displayName: Restore
695-
- script: ./build.sh -ci --arch arm64 -test --no-build-nodejs --all -projects $(Build.SourcesDirectory)/eng/helix/helix.proj /p:IsHelixJob=true /p:IsHelixDaily=true /p:ASPNETCORE_TEST_LOG_DIR=artifacts/log -bl
687+
- script: ./build.sh -ci --nobl --arch arm64 -test --no-build-nodejs --all -projects $(Build.SourcesDirectory)/eng/helix/helix.proj /p:IsHelixJob=true /p:IsHelixDaily=true /p:ASPNETCORE_TEST_LOG_DIR=artifacts/log
696688
displayName: Run build.sh helix arm64 target
697689
env:
698690
HelixApiAccessToken: $(HelixApiAccessToken) # Needed for internal queues
@@ -729,7 +721,7 @@ stages:
729721
arguments: $(Build.SourcesDirectory)/NuGet.config $Token
730722
env:
731723
Token: $(dn-bot-dnceng-artifact-feeds-rw)
732-
- script: ./eng/scripts/ci-source-build.sh --ci --configuration Release /p:BuildManaged=true /p:BuildNodeJs=false
724+
- script: ./eng/scripts/ci-source-build.sh --ci --nobl --configuration Release /p:BuildManaged=true /p:BuildNodeJs=false
733725
displayName: Run ci-source-build.sh
734726
- task: PublishBuildArtifacts@1
735727
displayName: Upload logs

.azure/pipelines/jobs/default-build.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -191,13 +191,13 @@ jobs:
191191
- ${{ if eq(parameters.steps, '')}}:
192192
- ${{ if eq(parameters.buildScript, '') }}:
193193
- ${{ if eq(parameters.agentOs, 'Windows') }}:
194-
- script: .\$(BuildDirectory)\build.cmd -ci /p:DotNetSignType=$(_SignType) -Configuration $(BuildConfiguration) $(BuildScriptArgs)
194+
- script: .\$(BuildDirectory)\build.cmd -ci -nobl -Configuration $(BuildConfiguration) $(BuildScriptArgs) /p:DotNetSignType=$(_SignType)
195195
displayName: Run build.cmd
196196
- ${{ if ne(parameters.agentOs, 'Windows') }}:
197-
- script: ./$(BuildDirectory)/build.sh -ci -configuration $(BuildConfiguration) $(BuildScriptArgs)
197+
- script: ./$(BuildDirectory)/build.sh --ci --nobl --configuration $(BuildConfiguration) $(BuildScriptArgs)
198198
displayName: Run build.sh
199199
- ${{ if ne(parameters.buildScript, '') }}:
200-
- script: $(BuildScript) -Configuration $(BuildConfiguration) $(BuildScriptArgs)
200+
- script: $(BuildScript) -ci -nobl -Configuration $(BuildConfiguration) $(BuildScriptArgs)
201201
displayName: run $(BuildScript)
202202

203203
- ${{ parameters.afterBuild }}

Directory.Build.props

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,7 @@
5656

5757
<IncludeSymbols>true</IncludeSymbols>
5858

59-
<DefaultNetCoreTargetFramework>netcoreapp5.0</DefaultNetCoreTargetFramework>
59+
<DefaultNetCoreTargetFramework>net5.0</DefaultNetCoreTargetFramework>
6060
</PropertyGroup>
6161

6262
<!-- Warnings and errors -->

build.ps1

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -71,6 +71,9 @@ You can also use -NoBuildInstallers to suppress this project type.
7171
.PARAMETER BinaryLog
7272
Enable the binary logger
7373
74+
.PARAMETER ExcludeCIBinarylog
75+
Don't output binary log by default in CI builds (short: -nobl).
76+
7477
.PARAMETER Verbosity
7578
MSBuild verbosity: q[uiet], m[inimal], n[ormal], d[etailed], and diag[nostic]
7679
@@ -151,6 +154,8 @@ param(
151154
# Diagnostics
152155
[Alias('bl')]
153156
[switch]$BinaryLog,
157+
[Alias('nobl')]
158+
[switch]$ExcludeCIBinarylog,
154159
[Alias('v')]
155160
[string]$Verbosity = 'minimal',
156161
[switch]$DumpProcesses, # Capture all running processes and dump them to a file.
@@ -344,11 +349,10 @@ if ($ForceCoreMsbuild) {
344349
$msbuildEngine = 'dotnet'
345350
}
346351

347-
# Workaround Arcade check which asserts BinaryLog is true on CI.
348-
# We always use binlogs on CI, but we customize the name of the log file
349-
$tmpBinaryLog = $BinaryLog
350-
if ($CI) {
351-
$BinaryLog = $true
352+
# Ensure passing neither -bl nor -nobl on CI avoids errors in tools.ps1. This is needed because both parameters are
353+
# $false by default i.e. they always exist. (We currently avoid binary logs but that is made visible in the YAML.)
354+
if ($CI -and -not $excludeCIBinarylog) {
355+
$binaryLog = $true
352356
}
353357

354358
# tools.ps1 corrupts global state, so reset these values in case they carried over from a previous build
@@ -360,10 +364,6 @@ Remove-Item variable:global:_MSBuildExe -ea Ignore
360364
# Import Arcade
361365
. "$PSScriptRoot/eng/common/tools.ps1"
362366

363-
if ($tmpBinaryLog) {
364-
$MSBuildArguments += "/bl:$LogDir/Build.binlog"
365-
}
366-
367367
# Capture MSBuild crash logs
368368
$env:MSBUILDDEBUGPATH = $LogDir
369369

0 commit comments

Comments
 (0)