Skip to content

Commit 9f337b6

Browse files
authored
Merge branch 'main' into merge/release/5.0-to-main
2 parents 0fa43be + 469faaf commit 9f337b6

File tree

5,149 files changed

+102741
-143722
lines changed

Some content is hidden

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

5,149 files changed

+102741
-143722
lines changed
+67
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,67 @@
1+
# Uses Scheduled Triggers, which aren't supported in YAML yet.
2+
# https://docs.microsoft.com/en-us/azure/devops/pipelines/build/triggers?view=vsts&tabs=yaml#scheduled
3+
4+
# Daily Tests for Blazor
5+
# These use Sauce Labs resources, hence they run daily rather than per-commit.
6+
7+
# We just need one Windows machine because all it does is trigger SauceLabs.
8+
variables:
9+
- ${{ if ne(variables['System.TeamProject'], 'public') }}:
10+
- group: DotNet-MSRC-Storage
11+
- group: AzureDevOps-Artifact-Feeds-Pats
12+
- name: SAUCE_CONNECT_DOWNLOAD_ON_INSTALL
13+
value: true
14+
- name: E2ETESTS_SauceTest
15+
value: true
16+
- name: E2ETESTS_Sauce__TunnelIdentifier
17+
value: 'blazor-e2e-sc-proxy-tunnel'
18+
- name: E2ETESTS_Sauce__HostName
19+
value: 'sauce.local'
20+
21+
jobs:
22+
- template: jobs/default-build.yml
23+
parameters:
24+
buildDirectory: src/Components
25+
isTestingJob: true
26+
agentOs: Windows
27+
jobName: BlazorDailyTests
28+
jobDisplayName: "Blazor Daily Tests"
29+
afterBuild:
30+
31+
# macOS/Safari
32+
- script: 'dotnet test --no-build --configuration Release --filter "StandaloneAppTest"'
33+
workingDirectory: 'src/Components/test/E2ETest'
34+
displayName: 'Run Blazor tests - macOS/Safari'
35+
condition: succeededOrFailed()
36+
env:
37+
# Secrets need to be explicitly mapped to env variables.
38+
E2ETESTS_Sauce__Username: '$(asplab-sauce-labs-username)'
39+
E2ETESTS_Sauce__AccessKey: '$(asplab-sauce-labs-access-key)'
40+
# Set platform/browser configuration.
41+
E2ETESTS_Sauce__TestName: 'Blazor Daily Tests - macOS/Safari'
42+
E2ETESTS_Sauce__PlatformName: 'macOS 10.14'
43+
E2ETESTS_Sauce__BrowserName: 'Safari'
44+
# Need to explicitly set version here because some older versions don't support timeouts in Safari.
45+
E2ETESTS_Sauce__SeleniumVersion: '3.4.0'
46+
47+
# Android/Chrome
48+
- script: 'dotnet test --no-build --configuration Release --filter "StandaloneAppTest"'
49+
workingDirectory: 'src/Components/test/E2ETest'
50+
displayName: 'Run Blazor tests - Android/Chrome'
51+
condition: succeededOrFailed()
52+
env:
53+
# Secrets need to be explicitly mapped to env variables.
54+
E2ETESTS_Sauce__Username: '$(asplab-sauce-labs-username)'
55+
E2ETESTS_Sauce__AccessKey: '$(asplab-sauce-labs-access-key)'
56+
# Set platform/browser configuration.
57+
E2ETESTS_Sauce__TestName: 'Blazor Daily Tests - Android/Chrome'
58+
E2ETESTS_Sauce__PlatformName: 'Android'
59+
E2ETESTS_Sauce__PlatformVersion: '10.0'
60+
E2ETESTS_Sauce__BrowserName: 'Chrome'
61+
E2ETESTS_Sauce__DeviceName: 'Android GoogleAPI Emulator'
62+
E2ETESTS_Sauce__DeviceOrientation: 'portrait'
63+
E2ETESTS_Sauce__AppiumVersion: '1.9.1'
64+
artifacts:
65+
- name: Windows_Logs
66+
path: artifacts/log/
67+
publishOnError: true

.azure/pipelines/ci.yml

+77-31
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,7 @@ trigger:
77
batch: true
88
branches:
99
include:
10-
- blazor-wasm
11-
- master
10+
- main
1211
- release/*
1312
- internal/release/*
1413

@@ -33,12 +32,13 @@ variables:
3332
- name: _DotNetValidationArtifactsCategory
3433
value: .NETCORE
3534
- name: PostBuildSign
36-
value: false
35+
value: true
3736
- ${{ if and(ne(variables['System.TeamProject'], 'public'), notin(variables['Build.Reason'], 'PullRequest')) }}:
3837
- name: _BuildArgs
3938
value: /p:TeamName=$(_TeamName)
4039
/p:OfficialBuildId=$(Build.BuildNumber)
4140
/p:SkipTestBuild=true
41+
/p:PostBuildSign=$(PostBuildSign)
4242
# DotNet-Blob-Feed provides: dotnetfeed-storage-access-key-1
4343
# Publish-Build-Assets provides: MaestroAccessToken, BotAccount-dotnet-maestro-bot-PAT
4444
- group: DotNet-Blob-Feed
@@ -67,7 +67,7 @@ variables:
6767
value: -ExcludeCIBinaryLog
6868
- ${{ if or(eq(variables['System.TeamProject'], 'public'), in(variables['Build.Reason'], 'PullRequest')) }}:
6969
- name: _BuildArgs
70-
value: '/p:SkipTestBuild=true'
70+
value: '/p:SkipTestBuild=true /p:PostBuildSign=$(PostBuildSign)'
7171
- name: _PublishArgs
7272
value: ''
7373
# Write binary logs for all main Windows build steps except the x86 one in public and PR builds.
@@ -95,13 +95,15 @@ variables:
9595
- ${{ if eq(variables['System.TeamProject'], 'internal') }}:
9696
- group: DotNet-MSRC-Storage
9797
- name: _InternalRuntimeDownloadArgs
98-
value: -DotNetRuntimeSourceFeed https://dotnetclimsrc.blob.core.windows.net/dotnet -DotNetRuntimeSourceFeedKey
99-
$(dotnetclimsrc-read-sas-token-base64) /p:DotNetAssetRootAccessTokenSuffix='$(dotnetclimsrc-read-sas-token-base64)'
100-
# The code signing doesn't use the aspnet build scripts, so the msbuild parameters have
101-
# to be passed directly. This is awkward, since we pass the same info above, but we have
102-
# to have it in two different forms
98+
value: -RuntimeSourceFeed https://dotnetclimsrc.blob.core.windows.net/dotnet
99+
-RuntimeSourceFeedKey $(dotnetclimsrc-read-sas-token-base64)
100+
/p:DotNetAssetRootAccessTokenSuffix='$(dotnetclimsrc-read-sas-token-base64)'
101+
# The code signing doesn't use the aspnet build scripts, so the msbuild parameters have to be passed directly. This
102+
# is awkward but necessary because the eng/common/ build scripts don't add the msbuild properties automatically.
103103
- name: _InternalRuntimeDownloadCodeSignArgs
104-
value: /p:DotNetRuntimeSourceFeed=https://dotnetclimsrc.blob.core.windows.net/dotnet /p:DotNetRuntimeSourceFeedKey=$(dotnetclimsrc-read-sas-token-base64)
104+
value: $(_InternalRuntimeDownloadArgs)
105+
/p:DotNetRuntimeSourceFeed=https://dotnetclimsrc.blob.core.windows.net/dotnet
106+
/p:DotNetRuntimeSourceFeedKey=$(dotnetclimsrc-read-sas-token-base64)
105107
- group: DotNet-HelixApi-Access
106108
- name: _UseHelixOpenQueues
107109
value: 'false'
@@ -151,7 +153,7 @@ stages:
151153
# This is intentional to workaround https://github.com/dotnet/arcade/issues/1957 which always re-submits for code-signing, even
152154
# if they have already been signed. This results in slower builds due to re-submitting the same .nupkg many times for signing.
153155
# The sign settings have been configured to
154-
- script: ./build.cmd
156+
- script: ./eng/build.cmd
155157
-ci
156158
-arch x64
157159
-pack
@@ -163,7 +165,7 @@ stages:
163165

164166
# Build the x86 shared framework
165167
# This is going to actually build x86 native assets.
166-
- script: ./build.cmd
168+
- script: ./eng/build.cmd
167169
-ci
168170
-noBuildRepoTasks
169171
-arch x86
@@ -191,7 +193,7 @@ stages:
191193
# This runs code-signing on all packages, zips, and jar files as defined in build/CodeSign.targets. If
192194
# https://github.com/dotnet/arcade/issues/1957 is resolved, consider running code-signing inline with the other
193195
# previous steps. Sign check is disabled because it is run in a separate step below, after installers are built.
194-
- script: ./build.cmd
196+
- script: ./eng/build.cmd
195197
-ci
196198
-noBuildRepoTasks
197199
-noBuildNative
@@ -204,7 +206,7 @@ stages:
204206
displayName: Code sign packages
205207

206208
# Windows installers bundle both x86 and x64 assets
207-
- script: ./build.cmd
209+
- script: ./eng/build.cmd
208210
-ci
209211
-noBuildRepoTasks
210212
-sign
@@ -285,7 +287,7 @@ stages:
285287
- name: Windows_arm64_Installers
286288
path: artifacts/installers/
287289
steps:
288-
- script: ./build.cmd
290+
- script: ./eng/build.cmd
289291
-ci
290292
-arch arm64
291293
-sign
@@ -300,7 +302,7 @@ stages:
300302
displayName: Build ARM64
301303

302304
# Windows installers bundle for arm64
303-
- script: ./build.cmd
305+
- script: ./eng/build.cmd
304306
-ci
305307
-noBuildRepoTasks
306308
-arch arm64
@@ -326,11 +328,43 @@ stages:
326328
publishFeedCredentials: 'DevDiv - VS package feed'
327329

328330

329-
# Build MacOS
331+
# Build MacOS arm64
332+
- template: jobs/default-build.yml
333+
parameters:
334+
jobName: MacOs_arm64_build
335+
jobDisplayName: "Build: macOS arm64"
336+
agentOs: macOs
337+
buildArgs:
338+
--arch arm64
339+
--pack
340+
--all
341+
--no-build-nodejs
342+
--no-build-java
343+
-p:OnlyPackPlatformSpecificPackages=true
344+
-p:AssetManifestFileName=aspnetcore-MacOS_arm64.xml
345+
$(_BuildArgs)
346+
$(_PublishArgs)
347+
$(_InternalRuntimeDownloadArgs)
348+
installNodeJs: false
349+
installJdk: false
350+
artifacts:
351+
- name: MacOS_arm64_Logs
352+
path: artifacts/log/
353+
publishOnError: true
354+
includeForks: true
355+
- name: MacOS_arm64_Packages
356+
path: artifacts/packages/
357+
358+
- ${{ if ne(variables['PostBuildSign'], 'true') }}:
359+
- template: jobs/codesign-xplat.yml
360+
parameters:
361+
inputName: MacOS_arm64
362+
363+
# Build MacOS x64
330364
- template: jobs/default-build.yml
331365
parameters:
332366
jobName: MacOs_x64_build
333-
jobDisplayName: "Build: macOS"
367+
jobDisplayName: "Build: macOS x64"
334368
agentOs: macOs
335369
buildArgs:
336370
--pack
@@ -365,7 +399,7 @@ stages:
365399
agentOs: Linux
366400
useHostedUbuntu: false
367401
steps:
368-
- script: ./build.sh
402+
- script: ./eng/build.sh
369403
--ci
370404
--arch x64
371405
--pack
@@ -375,7 +409,6 @@ stages:
375409
-p:OnlyPackPlatformSpecificPackages=true
376410
-p:AssetManifestFileName=aspnetcore-Linux_x64.xml
377411
$(_BuildArgs)
378-
$(_PublishArgs)
379412
$(_InternalRuntimeDownloadArgs)
380413
displayName: Run build.sh
381414
- script: |
@@ -405,7 +438,7 @@ stages:
405438
-p:OnlyPackPlatformSpecificPackages=true \
406439
-p:BuildRuntimeArchive=false \
407440
-p:LinuxInstallerType=rpm \
408-
-p:AssetManifestFileName=aspnetcore-Linux_x64-installers.xml \
441+
-p:AssetManifestFileName=aspnetcore-Linux_x64.xml \
409442
$(_BuildArgs) \
410443
$(_PublishArgs) \
411444
$(_InternalRuntimeDownloadArgs)
@@ -496,7 +529,7 @@ stages:
496529
jobDisplayName: "Build: Linux Musl x64"
497530
agentOs: Linux
498531
container: mcr.microsoft.com/dotnet-buildtools/prereqs:alpine-3.9-WithNode-0fc54a3-20190918214015
499-
buildScript: ./build.sh
532+
buildScript: ./eng/build.sh
500533
buildArgs:
501534
--arch x64
502535
--os-name linux-musl
@@ -533,7 +566,7 @@ stages:
533566
agentOs: Linux
534567
useHostedUbuntu: false
535568
container: mcr.microsoft.com/dotnet-buildtools/prereqs:ubuntu-18.04-cross-arm-alpine-20200827125937-14441ae
536-
buildScript: ./build.sh
569+
buildScript: ./eng/build.sh
537570
buildArgs:
538571
--arch arm
539572
--os-name linux-musl
@@ -555,9 +588,11 @@ stages:
555588
includeForks: true
556589
- name: Linux_musl_arm_Packages
557590
path: artifacts/packages/
558-
- template: jobs/codesign-xplat.yml
559-
parameters:
560-
inputName: Linux_musl_arm
591+
592+
- ${{ if ne(variables['PostBuildSign'], 'true') }}:
593+
- template: jobs/codesign-xplat.yml
594+
parameters:
595+
inputName: Linux_musl_arm
561596

562597
# Build Linux Musl ARM64
563598
- template: jobs/default-build.yml
@@ -567,7 +602,7 @@ stages:
567602
agentOs: Linux
568603
useHostedUbuntu: false
569604
container: mcr.microsoft.com/dotnet-buildtools/prereqs:ubuntu-16.04-cross-arm64-alpine-20200413125008-406629a
570-
buildScript: ./build.sh
605+
buildScript: ./eng/build.sh
571606
buildArgs:
572607
--arch arm64
573608
--os-name linux-musl
@@ -633,8 +668,9 @@ stages:
633668
jobDisplayName: "Test: Templates - Windows Server 2016 x64"
634669
agentOs: Windows
635670
isTestingJob: true
671+
testRunTitle: Templates-$(AgentOsName)-$(BuildConfiguration)
636672
steps:
637-
- script: ./build.cmd -ci -nobl -all -pack $(_InternalRuntimeDownloadArgs)
673+
- script: ./eng/build.cmd -ci -nobl -all -pack $(_InternalRuntimeDownloadArgs)
638674
displayName: Build Repo
639675
- script: ./src/ProjectTemplates/build.cmd -ci -nobl -noBuildRepoTasks -pack -NoRestore -noBuildNative -NoBuilddeps "/p:RunTemplateTests=true"
640676
displayName: Pack Templates
@@ -709,13 +745,13 @@ stages:
709745
timeoutInMinutes: 240
710746
steps:
711747
# Build the shared framework
712-
- script: ./build.cmd -ci -nobl -all -pack -arch x64
748+
- script: ./eng/build.cmd -ci -nobl -all -pack -arch x64
713749
/p:CrossgenOutput=false /p:ASPNETCORE_TEST_LOG_DIR=artifacts/log $(_InternalRuntimeDownloadArgs)
714750
displayName: Build shared fx
715-
- script: ./build.cmd -ci -nobl -noBuildRepoTasks -restore -noBuild -noBuildNative -projects src/Grpc/**/*.csproj
751+
- script: ./eng/build.cmd -ci -nobl -noBuildRepoTasks -restore -noBuild -noBuildNative -projects src/Grpc/**/*.csproj
716752
/p:CrossgenOutput=false /p:ASPNETCORE_TEST_LOG_DIR=artifacts/log $(_InternalRuntimeDownloadArgs)
717753
displayName: Restore interop projects
718-
- script: ./build.cmd -ci -nobl -noBuildRepoTasks -noRestore -test -all -noBuildNative -projects eng\helix\helix.proj
754+
- script: ./eng/build.cmd -ci -nobl -noBuildRepoTasks -noRestore -test -all -noBuildNative -projects eng\helix\helix.proj
719755
/p:IsRequiredCheck=true /p:IsHelixJob=true /p:BuildInteropProjects=true /p:RunTemplateTests=true
720756
/p:CrossgenOutput=false /p:ASPNETCORE_TEST_LOG_DIR=artifacts/log $(_InternalRuntimeDownloadArgs)
721757
displayName: Run build.cmd helix target
@@ -787,13 +823,23 @@ stages:
787823
- Windows_arm_build
788824
- Windows_arm64_build
789825
- ${{ if ne(variables['PostBuildSign'], 'true') }}:
826+
- CodeSign_Xplat_MacOS_arm64
790827
- CodeSign_Xplat_MacOS_x64
791828
- CodeSign_Xplat_Linux_x64
792829
- CodeSign_Xplat_Linux_arm
793830
- CodeSign_Xplat_Linux_arm64
794831
- CodeSign_Xplat_Linux_musl_x64
795832
- CodeSign_Xplat_Linux_musl_arm
796833
- CodeSign_Xplat_Linux_musl_arm64
834+
- ${{ if eq(variables['PostBuildSign'], 'true') }}:
835+
- MacOs_arm64_build
836+
- MacOs_x64_build
837+
- Linux_x64_build
838+
- Linux_arm_build
839+
- Linux_arm64_build
840+
- Linux_musl_x64_build
841+
- Linux_musl_arm_build
842+
- Linux_musl_arm64_build
797843
# In addition to the dependencies above, ensure the build was successful overall.
798844
- Source_Build
799845
pool:

.azure/pipelines/devBuilds.yml

+4-4
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ stages:
2020
jobDisplayName: "Build: Components"
2121
agentOs: Windows
2222
steps:
23-
- script: ./build.cmd
23+
- script: ./eng/build.cmd
2424
-ci
2525
-arch x64
2626
/bl:$(Build.SourcesDirectory)/artifacts/log/build.components.x64.binlog
@@ -43,7 +43,7 @@ stages:
4343
jobDisplayName: "Build: Servers"
4444
agentOs: Windows
4545
steps:
46-
- script: ./build.cmd
46+
- script: ./eng/build.cmd
4747
-ci
4848
-arch x64
4949
/bl:$(Build.SourcesDirectory)/artifacts/log/build.servers.x64.binlog
@@ -66,7 +66,7 @@ stages:
6666
jobDisplayName: "Build: Project Templates"
6767
agentOs: Windows
6868
steps:
69-
- script: ./build.cmd
69+
- script: ./eng/build.cmd
7070
-ci
7171
-arch x64
7272
/bl:$(Build.SourcesDirectory)/artifacts/log/build.projectTemplates.x64.binlog
@@ -89,7 +89,7 @@ stages:
8989
jobDisplayName: "Build: Everything"
9090
agentOs: Windows
9191
steps:
92-
- script: ./build.cmd
92+
- script: ./eng/build.cmd
9393
-ci
9494
-arch x64
9595
/bl:$(Build.SourcesDirectory)/artifacts/log/build.all.x64.binlog

0 commit comments

Comments
 (0)