Added support for Edge Stable channel (#21245)
diff --git a/.azure-pipelines.yml b/.azure-pipelines.yml
index 03e5a51..7e1732f 100644
--- a/.azure-pipelines.yml
+++ b/.azure-pipelines.yml
@@ -19,6 +19,7 @@
# These are all the branches referenced in the jobs that follow.
- epochs/daily
- epochs/three_hourly
+- triggers/edge_stable
- triggers/edge_dev
- triggers/edge_canary
- triggers/safari_stable
@@ -239,6 +240,42 @@
condition: always()
- template: tools/ci/azure/cleanup_win10.yml
+- job: results_edge_stable
+ displayName: 'all tests: Edge Stable'
+ condition: |
+ or(eq(variables['Build.SourceBranch'], 'refs/heads/epochs/daily'),
+ eq(variables['Build.SourceBranch'], 'refs/heads/triggers/edge_stable'),
+ and(eq(variables['Build.Reason'], 'Manual'), variables['run_all_edge_stable']))
+ strategy:
+ parallel: 10 # chosen to make runtime ~2h
+ timeoutInMinutes: 180
+ pool:
+ name: 'Hosted Windows Client'
+ steps:
+ - template: tools/ci/azure/system_info.yml
+ - template: tools/ci/azure/checkout.yml
+ - template: tools/ci/azure/install_python.yml
+ - template: tools/ci/azure/pip_install.yml
+ parameters:
+ packages: virtualenv
+ - template: tools/ci/azure/install_certs.yml
+ - template: tools/ci/azure/install_edge.yml
+ parameters:
+ channel: stable
+ - template: tools/ci/azure/update_hosts.yml
+ - template: tools/ci/azure/update_manifest.yml
+ - script: python ./wpt run --yes --no-manifest-update --no-restart-on-unexpected --no-fail-on-unexpected --install-fonts --this-chunk $(System.JobPositionInPhase) --total-chunks $(System.TotalJobsInPhase) --chunk-type hash --log-wptreport $(Build.ArtifactStagingDirectory)/wpt_report_$(System.JobPositionInPhase).json --log-wptscreenshot $(Build.ArtifactStagingDirectory)/wpt_screenshot_$(System.JobPositionInPhase).txt --log-mach - --log-mach-level info --channel stable edgechromium
+ displayName: 'Run tests (Edge Stable)'
+ - task: PublishBuildArtifacts@1
+ displayName: 'Publish results'
+ inputs:
+ artifactName: 'edge-stable-results'
+ - template: tools/ci/azure/cleanup_win10.yml
+- template: tools/ci/azure/fyi_hook.yml
+ parameters:
+ dependsOn: results_edge_stable
+ artifactName: edge-stable-results
+
- job: results_edge_dev
displayName: 'all tests: Edge Dev'
condition: |
diff --git a/tools/ci/azure/install_edge.yml b/tools/ci/azure/install_edge.yml
index e4c425a..297b6e6 100644
--- a/tools/ci/azure/install_edge.yml
+++ b/tools/ci/azure/install_edge.yml
@@ -4,6 +4,26 @@
# Should match https://web-platform-tests.org/running-tests/chrome.html
# Just replace chrome with edgechromium
steps:
+- ${{ if eq(parameters.channel, 'stable') }}:
+ - powershell: |
+ $edgeInstallerName = 'MicrosoftEdgeSetup.exe'
+ # Link to Stable channel installer
+ Start-BitsTransfer -Source 'https://go.microsoft.com/fwlink/?linkid=2108834&Channel=Stable&language=en' -Destination MicrosoftEdgeSetup.exe
+ if (-not (Test-Path $edgeInstallerName)) {
+ Throw "Failed to download Edge installer to $edgeInstallerName."
+ }
+ cmd /c START /WAIT $edgeInstallerName /silent /install
+ $edgePath = "$env:systemdrive\Program Files (x86)\Microsoft\Edge\Application"
+ if (Test-Path $edgePath) {
+ Write-Host "##vso[task.prependpath]$edgePath"
+ Write-Host "Edge Stable installed at $edgePath."
+ (Get-Item -Path "$edgePath\msedge.exe").VersionInfo | Format-List
+ } else {
+ Copy-Item -Path "$env:temp\*edge*.log" -Destination $(Build.ArtifactStagingDirectory) -Force
+ Throw "Failed to install Edge at $edgePath"
+ }
+ displayName: 'Install Edge Stable'
+
- ${{ if eq(parameters.channel, 'canary') }}:
- powershell: |
$edgeInstallerName = 'MicrosoftEdgeSetup.exe'
diff --git a/tools/wpt/browser.py b/tools/wpt/browser.py
index f0c2eeb..13ce823 100644
--- a/tools/wpt/browser.py
+++ b/tools/wpt/browser.py
@@ -888,8 +888,10 @@
if not binary:
# Use paths from different Edge channels starting with Release\Beta\Dev\Canary
winpaths = [os.path.expanduser("~\\AppData\\Local\\Microsoft\\Edge\\Application"),
+ os.path.expandvars("$SYSTEMDRIVE\\Program Files\\Microsoft\\Edge\\Application"),
os.path.expandvars("$SYSTEMDRIVE\\Program Files\\Microsoft\\Edge Beta\\Application"),
os.path.expandvars("$SYSTEMDRIVE\\Program Files\\Microsoft\\Edge Dev\\Application"),
+ os.path.expandvars("$SYSTEMDRIVE\\Program Files (x86)\\Microsoft\\Edge\\Application"),
os.path.expandvars("$SYSTEMDRIVE\\Program Files (x86)\\Microsoft\\Edge Beta\\Application"),
os.path.expandvars("$SYSTEMDRIVE\\Program Files (x86)\\Microsoft\\Edge Dev\\Application"),
os.path.expanduser("~\\AppData\Local\\Microsoft\\Edge SxS\\Application")]