`actions/upload-artifact@v4` comes with the following [breaking change](https://github.com/actions/upload-artifact?tab=readme-ov-file#breaking-changes): "Due to how Artifacts are created in this new version, it is no longer possible to upload to the same named Artifact multiple times. You must either split the uploads into multiple Artifacts with different names, or only upload once. Otherwise you will encounter an error." Due to that we cannot copy multiple blob report folders into the same artifact name and rely on the action to merge them. Instead, as suggested by their migration guide, we upload each blob report into a uniquely named artifact with prefix `blob-report-` and then download all of them into same directory. This version change also affects how we store pull_request_number.txt into an artifact. Previously we relied on the fact that uploading artifact with the same name would silently override existing one, but now it's an error. To overcome that, we upload PR number file into uniquely named artifacts `pull-request-*` and later extract them into same location with `unzip -n` which will never override existing file, so we end up with single `pull_request_number.txt`. Reference #28800
885 lines
25 KiB
YAML
885 lines
25 KiB
YAML
name: "tests 2"
|
|
|
|
on:
|
|
push:
|
|
branches:
|
|
- main
|
|
- release-*
|
|
pull_request:
|
|
paths-ignore:
|
|
- 'browser_patches/**'
|
|
- 'docs/**'
|
|
types: [ labeled ]
|
|
branches:
|
|
- main
|
|
- release-*
|
|
|
|
env:
|
|
# Force terminal colors. @see https://www.npmjs.com/package/colors
|
|
FORCE_COLOR: 1
|
|
FLAKINESS_CONNECTION_STRING: ${{ secrets.FLAKINESS_CONNECTION_STRING }}
|
|
ELECTRON_SKIP_BINARY_DOWNLOAD: 1
|
|
|
|
jobs:
|
|
test_linux:
|
|
name: ${{ matrix.os }} (${{ matrix.browser }})
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
browser: [chromium, firefox, webkit]
|
|
os: [ubuntu-20.04]
|
|
runs-on: ${{ matrix.os }}
|
|
env:
|
|
PWTEST_BOT_NAME: "${{ matrix.browser }}-${{ matrix.os }}"
|
|
steps:
|
|
- uses: actions/checkout@v3
|
|
- uses: actions/setup-node@v3
|
|
with:
|
|
node-version: 18
|
|
- run: npm ci
|
|
env:
|
|
DEBUG: pw:install
|
|
PLAYWRIGHT_SKIP_BROWSER_DOWNLOAD: 1
|
|
- run: npm run build
|
|
- run: npx playwright install --with-deps ${{ matrix.browser }} chromium
|
|
- run: xvfb-run --auto-servernum --server-args="-screen 0 1280x960x24" -- npm run test -- --project=${{ matrix.browser }}
|
|
- run: node tests/config/checkCoverage.js ${{ matrix.browser }}
|
|
- run: ./utils/upload_flakiness_dashboard.sh ./test-results/report.json
|
|
if: always()
|
|
shell: bash
|
|
- name: Upload blob report
|
|
if: always()
|
|
uses: ./.github/actions/upload-blob-report
|
|
with:
|
|
report_dir: blob-report
|
|
job_name: ${{ env.PWTEST_BOT_NAME }}
|
|
|
|
test_mac:
|
|
name: ${{ matrix.os }} (${{ matrix.browser }})
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
os: [macos-12, macos-13]
|
|
browser: [chromium, firefox, webkit]
|
|
runs-on: ${{ matrix.os }}
|
|
env:
|
|
PWTEST_BOT_NAME: "${{ matrix.browser }}-${{ matrix.os }}"
|
|
steps:
|
|
- uses: actions/checkout@v3
|
|
- uses: actions/setup-node@v3
|
|
with:
|
|
node-version: 18
|
|
- run: npm ci
|
|
env:
|
|
DEBUG: pw:install
|
|
PLAYWRIGHT_SKIP_BROWSER_DOWNLOAD: 1
|
|
- run: npm run build
|
|
- run: npx playwright install --with-deps ${{ matrix.browser }} chromium
|
|
- run: npm run test -- --project=${{ matrix.browser }}
|
|
- run: ./utils/upload_flakiness_dashboard.sh ./test-results/report.json
|
|
if: always()
|
|
shell: bash
|
|
- name: Upload blob report
|
|
if: always()
|
|
uses: ./.github/actions/upload-blob-report
|
|
with:
|
|
report_dir: blob-report
|
|
job_name: ${{ env.PWTEST_BOT_NAME }}
|
|
|
|
test_win:
|
|
name: "Windows"
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
browser: [chromium, firefox, webkit]
|
|
runs-on: windows-latest
|
|
env:
|
|
PWTEST_BOT_NAME: "${{ matrix.browser }}-windows-latest"
|
|
steps:
|
|
- uses: actions/checkout@v3
|
|
- uses: actions/setup-node@v3
|
|
with:
|
|
node-version: 18
|
|
- run: npm ci
|
|
env:
|
|
DEBUG: pw:install
|
|
PLAYWRIGHT_SKIP_BROWSER_DOWNLOAD: 1
|
|
- run: npm run build
|
|
- run: npx playwright install --with-deps ${{ matrix.browser }} chromium
|
|
- run: npm run test -- --project=${{ matrix.browser }} --workers=1
|
|
if: matrix.browser == 'firefox'
|
|
shell: bash
|
|
- run: npm run test -- --project=${{ matrix.browser }}
|
|
if: matrix.browser != 'firefox'
|
|
shell: bash
|
|
- run: ./utils/upload_flakiness_dashboard.sh ./test-results/report.json
|
|
if: always()
|
|
shell: bash
|
|
- name: Upload blob report
|
|
if: always()
|
|
uses: ./.github/actions/upload-blob-report
|
|
with:
|
|
report_dir: blob-report
|
|
job_name: ${{ env.PWTEST_BOT_NAME }}
|
|
|
|
test-package-installations-other-node-versions:
|
|
name: "Installation Test ${{ matrix.os }} (${{ matrix.node_version }})"
|
|
runs-on: ${{ matrix.os }}
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
include:
|
|
- os: ubuntu-latest
|
|
node_version: 16
|
|
- os: ubuntu-latest
|
|
node_version: 20
|
|
timeout-minutes: 30
|
|
steps:
|
|
- uses: actions/checkout@v3
|
|
- uses: actions/setup-node@v3
|
|
with:
|
|
node-version: ${{ matrix.node_version }}
|
|
- run: npm ci
|
|
env:
|
|
DEBUG: pw:install
|
|
- run: npm run build
|
|
- run: npx playwright install --with-deps
|
|
- run: npm install -g yarn@1
|
|
- run: npm install -g pnpm@8
|
|
- run: npm run itest
|
|
if: matrix.os != 'ubuntu-latest'
|
|
- run: xvfb-run --auto-servernum --server-args="-screen 0 1280x960x24" -- npm run itest
|
|
if: matrix.os == 'ubuntu-latest'
|
|
- run: ./utils/upload_flakiness_dashboard.sh ./test-results/report.json
|
|
if: always()
|
|
shell: bash
|
|
|
|
headed_tests:
|
|
name: "headed ${{ matrix.browser }} (${{ matrix.os }})"
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
browser: [chromium, firefox, webkit]
|
|
os: [ubuntu-20.04, ubuntu-22.04, macos-latest, windows-latest]
|
|
runs-on: ${{ matrix.os }}
|
|
env:
|
|
PWTEST_BOT_NAME: "${{ matrix.browser }}-headed-${{ matrix.os }}"
|
|
steps:
|
|
- uses: actions/checkout@v3
|
|
- uses: actions/setup-node@v3
|
|
with:
|
|
node-version: 18
|
|
- run: npm ci
|
|
env:
|
|
DEBUG: pw:install
|
|
PLAYWRIGHT_SKIP_BROWSER_DOWNLOAD: 1
|
|
- run: npm run build
|
|
- run: npx playwright install --with-deps ${{ matrix.browser }} chromium
|
|
- run: xvfb-run --auto-servernum --server-args="-screen 0 1280x960x24" -- npm run test -- --project=${{ matrix.browser }} --headed
|
|
if: always() && startsWith(matrix.os, 'ubuntu-')
|
|
- run: npm run test -- --project=${{ matrix.browser }} --headed
|
|
if: always() && !startsWith(matrix.os, 'ubuntu-')
|
|
- run: ./utils/upload_flakiness_dashboard.sh ./test-results/report.json
|
|
if: always()
|
|
shell: bash
|
|
- name: Upload blob report
|
|
if: always()
|
|
uses: ./.github/actions/upload-blob-report
|
|
with:
|
|
report_dir: blob-report
|
|
job_name: ${{ env.PWTEST_BOT_NAME }}
|
|
|
|
transport_linux:
|
|
name: "Transport"
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
mode: [driver, service]
|
|
runs-on: ubuntu-20.04
|
|
env:
|
|
PWTEST_BOT_NAME: "${{ matrix.mode }}"
|
|
steps:
|
|
- uses: actions/checkout@v3
|
|
- uses: actions/setup-node@v3
|
|
with:
|
|
node-version: 18
|
|
- run: npm ci
|
|
env:
|
|
DEBUG: pw:install
|
|
PLAYWRIGHT_SKIP_BROWSER_DOWNLOAD: 1
|
|
- run: npm run build
|
|
- run: npx playwright install --with-deps chromium
|
|
- run: xvfb-run --auto-servernum --server-args="-screen 0 1280x960x24" -- npm run ctest
|
|
env:
|
|
PWTEST_MODE: ${{ matrix.mode }}
|
|
- run: ./utils/upload_flakiness_dashboard.sh ./test-results/report.json
|
|
if: always()
|
|
shell: bash
|
|
- name: Upload blob report
|
|
if: always()
|
|
uses: ./.github/actions/upload-blob-report
|
|
with:
|
|
report_dir: blob-report
|
|
job_name: ${{ env.PWTEST_BOT_NAME }}
|
|
|
|
tracing_linux:
|
|
name: Tracing ${{ matrix.browser }} ${{ matrix.channel }}
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
include:
|
|
- browser: chromium
|
|
- browser: firefox
|
|
- browser: webkit
|
|
- browser: chromium
|
|
channel: chromium-tip-of-tree
|
|
runs-on: ubuntu-20.04
|
|
env:
|
|
PWTEST_BOT_NAME: "tracing-${{ matrix.channel || matrix.browser }}"
|
|
steps:
|
|
- uses: actions/checkout@v3
|
|
- uses: actions/setup-node@v3
|
|
with:
|
|
node-version: 18
|
|
- run: npm ci
|
|
env:
|
|
DEBUG: pw:install
|
|
PLAYWRIGHT_SKIP_BROWSER_DOWNLOAD: 1
|
|
- run: npm run build
|
|
- run: npx playwright install --with-deps ${{ matrix.browser }} chromium ${{ matrix.channel }}
|
|
- run: xvfb-run --auto-servernum --server-args="-screen 0 1280x960x24" -- npm run test -- --project=${{ matrix.browser }}
|
|
env:
|
|
PWTEST_TRACE: 1
|
|
PWTEST_CHANNEL: ${{ matrix.channel }}
|
|
- run: ./utils/upload_flakiness_dashboard.sh ./test-results/report.json
|
|
if: always()
|
|
shell: bash
|
|
- name: Upload blob report
|
|
if: always()
|
|
uses: ./.github/actions/upload-blob-report
|
|
with:
|
|
report_dir: blob-report
|
|
job_name: ${{ env.PWTEST_BOT_NAME }}
|
|
|
|
chrome_stable_linux:
|
|
name: "Chrome Stable (Linux)"
|
|
runs-on: ubuntu-20.04
|
|
env:
|
|
PWTEST_BOT_NAME: "chrome-stable-linux"
|
|
steps:
|
|
- uses: actions/checkout@v3
|
|
- uses: actions/setup-node@v3
|
|
with:
|
|
node-version: 18
|
|
- run: npm ci
|
|
env:
|
|
PLAYWRIGHT_SKIP_BROWSER_DOWNLOAD: 1
|
|
- run: npm run build
|
|
- run: npx playwright install --with-deps chrome
|
|
- run: xvfb-run --auto-servernum --server-args="-screen 0 1280x960x24" -- npm run ctest
|
|
env:
|
|
PWTEST_CHANNEL: chrome
|
|
- run: ./utils/upload_flakiness_dashboard.sh ./test-results/report.json
|
|
if: always()
|
|
shell: bash
|
|
- name: Upload blob report
|
|
if: always()
|
|
uses: ./.github/actions/upload-blob-report
|
|
with:
|
|
report_dir: blob-report
|
|
job_name: ${{ env.PWTEST_BOT_NAME }}
|
|
|
|
chrome_stable_win:
|
|
name: "Chrome Stable (Win)"
|
|
runs-on: windows-latest
|
|
env:
|
|
PWTEST_BOT_NAME: "chrome-stable-windows"
|
|
steps:
|
|
- uses: actions/checkout@v3
|
|
- uses: actions/setup-node@v3
|
|
with:
|
|
node-version: 18
|
|
- run: npm ci
|
|
env:
|
|
PLAYWRIGHT_SKIP_BROWSER_DOWNLOAD: 1
|
|
- run: npm run build
|
|
- run: npx playwright install --with-deps chrome
|
|
- run: npm run ctest
|
|
shell: bash
|
|
env:
|
|
PWTEST_CHANNEL: chrome
|
|
- run: ./utils/upload_flakiness_dashboard.sh ./test-results/report.json
|
|
if: always()
|
|
shell: bash
|
|
- name: Upload blob report
|
|
if: always()
|
|
uses: ./.github/actions/upload-blob-report
|
|
with:
|
|
report_dir: blob-report
|
|
job_name: ${{ env.PWTEST_BOT_NAME }}
|
|
|
|
chrome_stable_mac:
|
|
name: "Chrome Stable (Mac)"
|
|
runs-on: macos-latest
|
|
env:
|
|
PWTEST_BOT_NAME: "chrome-stable-mac"
|
|
steps:
|
|
- uses: actions/checkout@v3
|
|
- uses: actions/setup-node@v3
|
|
with:
|
|
node-version: 18
|
|
- run: npm ci
|
|
env:
|
|
PLAYWRIGHT_SKIP_BROWSER_DOWNLOAD: 1
|
|
- run: npm run build
|
|
- run: npx playwright install --with-deps chrome
|
|
- run: npm run ctest
|
|
env:
|
|
PWTEST_CHANNEL: chrome
|
|
- run: ./utils/upload_flakiness_dashboard.sh ./test-results/report.json
|
|
if: always()
|
|
shell: bash
|
|
- name: Upload blob report
|
|
if: always()
|
|
uses: ./.github/actions/upload-blob-report
|
|
with:
|
|
report_dir: blob-report
|
|
job_name: ${{ env.PWTEST_BOT_NAME }}
|
|
|
|
chromium_tot:
|
|
name: Chromium TOT ${{ matrix.os }}
|
|
runs-on: ${{ matrix.os }}
|
|
env:
|
|
PWTEST_CHANNEL: chromium-tip-of-tree
|
|
PWTEST_BOT_NAME: "tip-of-tree-${{ matrix.os }}"
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
os: [ubuntu-20.04, macos-12, windows-latest]
|
|
steps:
|
|
- uses: actions/checkout@v3
|
|
- uses: actions/setup-node@v3
|
|
with:
|
|
node-version: 18
|
|
- run: npm ci
|
|
env:
|
|
PLAYWRIGHT_SKIP_BROWSER_DOWNLOAD: 1
|
|
- run: npm run build
|
|
- run: npx playwright install --with-deps chromium-tip-of-tree
|
|
- run: xvfb-run --auto-servernum --server-args="-screen 0 1280x960x24" -- npm run ctest
|
|
if: matrix.os == 'ubuntu-20.04'
|
|
- run: npm run ctest
|
|
if: matrix.os != 'ubuntu-20.04'
|
|
- run: ./utils/upload_flakiness_dashboard.sh ./test-results/report.json
|
|
if: always()
|
|
shell: bash
|
|
- name: Upload blob report
|
|
if: always()
|
|
uses: ./.github/actions/upload-blob-report
|
|
with:
|
|
report_dir: blob-report
|
|
job_name: ${{ env.PWTEST_BOT_NAME }}
|
|
|
|
chromium_tot_headed:
|
|
name: Chromium TOT headed ${{ matrix.os }}
|
|
runs-on: ${{ matrix.os }}
|
|
env:
|
|
PWTEST_BOT_NAME: "tip-of-tree-headed-${{ matrix.os }}"
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
os: [ubuntu-latest, macos-latest, windows-latest]
|
|
steps:
|
|
- uses: actions/checkout@v3
|
|
- uses: actions/setup-node@v3
|
|
with:
|
|
node-version: 18
|
|
- run: npm ci
|
|
env:
|
|
PLAYWRIGHT_SKIP_BROWSER_DOWNLOAD: 1
|
|
- run: npm run build
|
|
- run: npx playwright install --with-deps chromium-tip-of-tree
|
|
- run: xvfb-run --auto-servernum --server-args="-screen 0 1280x960x24" -- npm run ctest -- --headed
|
|
if: matrix.os == 'ubuntu-latest'
|
|
- run: npm run ctest -- --headed
|
|
if: matrix.os != 'ubuntu-latest'
|
|
env:
|
|
PWTEST_CHANNEL: chromium-tip-of-tree
|
|
- run: ./utils/upload_flakiness_dashboard.sh ./test-results/report.json
|
|
if: always()
|
|
shell: bash
|
|
- name: Upload blob report
|
|
if: always()
|
|
uses: ./.github/actions/upload-blob-report
|
|
with:
|
|
report_dir: blob-report
|
|
job_name: ${{ env.PWTEST_BOT_NAME }}
|
|
|
|
firefox_beta_linux:
|
|
name: "Firefox Beta (Linux)"
|
|
runs-on: ubuntu-20.04
|
|
env:
|
|
PWTEST_BOT_NAME: "firefox-beta-linux"
|
|
steps:
|
|
- uses: actions/checkout@v3
|
|
- uses: actions/setup-node@v3
|
|
with:
|
|
node-version: 18
|
|
- run: npm ci
|
|
env:
|
|
PLAYWRIGHT_SKIP_BROWSER_DOWNLOAD: 1
|
|
- run: npm run build
|
|
- run: npx playwright install --with-deps firefox-beta chromium
|
|
- run: xvfb-run --auto-servernum --server-args="-screen 0 1280x960x24" -- npm run ftest
|
|
env:
|
|
PWTEST_CHANNEL: firefox-beta
|
|
- run: ./utils/upload_flakiness_dashboard.sh ./test-results/report.json
|
|
if: always()
|
|
shell: bash
|
|
- name: Upload blob report
|
|
if: always()
|
|
uses: ./.github/actions/upload-blob-report
|
|
with:
|
|
report_dir: blob-report
|
|
job_name: ${{ env.PWTEST_BOT_NAME }}
|
|
|
|
firefox_beta_win:
|
|
name: "Firefox Beta (Win)"
|
|
runs-on: windows-latest
|
|
env:
|
|
PWTEST_BOT_NAME: "firefox-beta-windows"
|
|
steps:
|
|
- uses: actions/checkout@v3
|
|
- uses: actions/setup-node@v3
|
|
with:
|
|
node-version: 18
|
|
- run: npm ci
|
|
env:
|
|
PLAYWRIGHT_SKIP_BROWSER_DOWNLOAD: 1
|
|
- run: npm run build
|
|
- run: npx playwright install --with-deps firefox-beta chromium
|
|
- run: npm run ftest -- --workers=1
|
|
shell: bash
|
|
env:
|
|
PWTEST_CHANNEL: firefox-beta
|
|
- run: ./utils/upload_flakiness_dashboard.sh ./test-results/report.json
|
|
if: always()
|
|
shell: bash
|
|
- name: Upload blob report
|
|
if: always()
|
|
uses: ./.github/actions/upload-blob-report
|
|
with:
|
|
report_dir: blob-report
|
|
job_name: ${{ env.PWTEST_BOT_NAME }}
|
|
|
|
firefox_beta_mac:
|
|
name: "Firefox Beta (Mac)"
|
|
runs-on: macos-latest
|
|
env:
|
|
PWTEST_BOT_NAME: "firefox-beta-mac"
|
|
steps:
|
|
- uses: actions/checkout@v3
|
|
- uses: actions/setup-node@v3
|
|
with:
|
|
node-version: 18
|
|
- run: npm ci
|
|
env:
|
|
PLAYWRIGHT_SKIP_BROWSER_DOWNLOAD: 1
|
|
- run: npm run build
|
|
- run: npx playwright install --with-deps firefox-beta chromium
|
|
- run: npm run ftest
|
|
env:
|
|
PWTEST_CHANNEL: firefox-beta
|
|
- run: ./utils/upload_flakiness_dashboard.sh ./test-results/report.json
|
|
if: always()
|
|
shell: bash
|
|
- name: Upload blob report
|
|
if: always()
|
|
uses: ./.github/actions/upload-blob-report
|
|
with:
|
|
report_dir: blob-report
|
|
job_name: ${{ env.PWTEST_BOT_NAME }}
|
|
|
|
edge_stable_mac:
|
|
name: "Edge Stable (Mac)"
|
|
runs-on: macos-latest
|
|
env:
|
|
PWTEST_BOT_NAME: "edge-stable-mac"
|
|
steps:
|
|
- uses: actions/checkout@v3
|
|
- uses: actions/setup-node@v3
|
|
with:
|
|
node-version: 18
|
|
- run: npm ci
|
|
env:
|
|
PLAYWRIGHT_SKIP_BROWSER_DOWNLOAD: 1
|
|
- run: npm run build
|
|
- run: npx playwright install --with-deps msedge
|
|
- run: npm run ctest
|
|
env:
|
|
PWTEST_CHANNEL: msedge
|
|
- run: ./utils/upload_flakiness_dashboard.sh ./test-results/report.json
|
|
if: always()
|
|
shell: bash
|
|
- name: Upload blob report
|
|
if: always()
|
|
uses: ./.github/actions/upload-blob-report
|
|
with:
|
|
report_dir: blob-report
|
|
job_name: ${{ env.PWTEST_BOT_NAME }}
|
|
|
|
edge_stable_win:
|
|
name: "Edge Stable (Win)"
|
|
runs-on: windows-latest
|
|
env:
|
|
PWTEST_BOT_NAME: "edge-stable-windows"
|
|
steps:
|
|
- uses: actions/checkout@v3
|
|
- uses: actions/setup-node@v3
|
|
with:
|
|
node-version: 18
|
|
- run: npm ci
|
|
env:
|
|
PLAYWRIGHT_SKIP_BROWSER_DOWNLOAD: 1
|
|
- run: npm run build
|
|
- run: npx playwright install --with-deps msedge
|
|
- run: npm run ctest
|
|
shell: bash
|
|
env:
|
|
PWTEST_CHANNEL: msedge
|
|
- run: ./utils/upload_flakiness_dashboard.sh ./test-results/report.json
|
|
if: always()
|
|
shell: bash
|
|
- name: Upload blob report
|
|
if: always()
|
|
uses: ./.github/actions/upload-blob-report
|
|
with:
|
|
report_dir: blob-report
|
|
job_name: ${{ env.PWTEST_BOT_NAME }}
|
|
|
|
edge_stable_linux:
|
|
name: "Edge Stable (Linux)"
|
|
runs-on: ubuntu-20.04
|
|
env:
|
|
PWTEST_BOT_NAME: "edge-stable-linux"
|
|
steps:
|
|
- uses: actions/checkout@v3
|
|
- uses: actions/setup-node@v3
|
|
with:
|
|
node-version: 18
|
|
- run: npm ci
|
|
env:
|
|
PLAYWRIGHT_SKIP_BROWSER_DOWNLOAD: 1
|
|
- run: npm run build
|
|
- run: npx playwright install --with-deps msedge
|
|
- run: xvfb-run --auto-servernum --server-args="-screen 0 1280x960x24" -- npm run ctest
|
|
env:
|
|
PWTEST_CHANNEL: msedge
|
|
- run: ./utils/upload_flakiness_dashboard.sh ./test-results/report.json
|
|
if: always()
|
|
shell: bash
|
|
- name: Upload blob report
|
|
if: always()
|
|
uses: ./.github/actions/upload-blob-report
|
|
with:
|
|
report_dir: blob-report
|
|
job_name: ${{ env.PWTEST_BOT_NAME }}
|
|
|
|
edge_beta_mac:
|
|
name: "Edge Beta (Mac)"
|
|
runs-on: macos-latest
|
|
env:
|
|
PWTEST_BOT_NAME: "edge-beta-mac"
|
|
steps:
|
|
- uses: actions/checkout@v3
|
|
- uses: actions/setup-node@v3
|
|
with:
|
|
node-version: 18
|
|
- run: npm ci
|
|
env:
|
|
PLAYWRIGHT_SKIP_BROWSER_DOWNLOAD: 1
|
|
- run: npm run build
|
|
- run: npx playwright install --with-deps msedge-beta
|
|
- run: npm run ctest
|
|
env:
|
|
PWTEST_CHANNEL: msedge-beta
|
|
- run: ./utils/upload_flakiness_dashboard.sh ./test-results/report.json
|
|
if: always()
|
|
shell: bash
|
|
- name: Upload blob report
|
|
if: always()
|
|
uses: ./.github/actions/upload-blob-report
|
|
with:
|
|
report_dir: blob-report
|
|
job_name: ${{ env.PWTEST_BOT_NAME }}
|
|
|
|
edge_beta_win:
|
|
name: "Edge Beta (Win)"
|
|
runs-on: windows-latest
|
|
env:
|
|
PWTEST_BOT_NAME: "edge-beta-windows"
|
|
steps:
|
|
- uses: actions/checkout@v3
|
|
- uses: actions/setup-node@v3
|
|
with:
|
|
node-version: 18
|
|
- run: npm ci
|
|
env:
|
|
PLAYWRIGHT_SKIP_BROWSER_DOWNLOAD: 1
|
|
- run: npm run build
|
|
- run: npx playwright install --with-deps msedge-beta
|
|
- run: npm run ctest
|
|
shell: bash
|
|
env:
|
|
PWTEST_CHANNEL: msedge-beta
|
|
- run: ./utils/upload_flakiness_dashboard.sh ./test-results/report.json
|
|
if: always()
|
|
shell: bash
|
|
- name: Upload blob report
|
|
if: always()
|
|
uses: ./.github/actions/upload-blob-report
|
|
with:
|
|
report_dir: blob-report
|
|
job_name: ${{ env.PWTEST_BOT_NAME }}
|
|
|
|
edge_beta_linux:
|
|
name: "Edge Beta (Linux)"
|
|
runs-on: ubuntu-20.04
|
|
env:
|
|
PWTEST_BOT_NAME: "edge-beta-linux"
|
|
steps:
|
|
- uses: actions/checkout@v3
|
|
- uses: actions/setup-node@v3
|
|
with:
|
|
node-version: 18
|
|
- run: npm ci
|
|
env:
|
|
PLAYWRIGHT_SKIP_BROWSER_DOWNLOAD: 1
|
|
- run: npm run build
|
|
- run: npx playwright install --with-deps msedge-beta
|
|
- run: xvfb-run --auto-servernum --server-args="-screen 0 1280x960x24" -- npm run ctest
|
|
env:
|
|
PWTEST_CHANNEL: msedge-beta
|
|
- run: ./utils/upload_flakiness_dashboard.sh ./test-results/report.json
|
|
if: always()
|
|
shell: bash
|
|
- name: Upload blob report
|
|
if: always()
|
|
uses: ./.github/actions/upload-blob-report
|
|
with:
|
|
report_dir: blob-report
|
|
job_name: ${{ env.PWTEST_BOT_NAME }}
|
|
|
|
edge_dev_mac:
|
|
name: "Edge Dev (Mac)"
|
|
runs-on: macos-latest
|
|
env:
|
|
PWTEST_BOT_NAME: "edge-dev-mac"
|
|
steps:
|
|
- uses: actions/checkout@v3
|
|
- uses: actions/setup-node@v3
|
|
with:
|
|
node-version: 18
|
|
- run: npm ci
|
|
env:
|
|
PLAYWRIGHT_SKIP_BROWSER_DOWNLOAD: 1
|
|
- run: npm run build
|
|
- run: npx playwright install --with-deps msedge-dev
|
|
- run: npm run ctest
|
|
env:
|
|
PWTEST_CHANNEL: msedge-dev
|
|
- run: ./utils/upload_flakiness_dashboard.sh ./test-results/report.json
|
|
if: always()
|
|
shell: bash
|
|
- name: Upload blob report
|
|
if: always()
|
|
uses: ./.github/actions/upload-blob-report
|
|
with:
|
|
report_dir: blob-report
|
|
job_name: ${{ env.PWTEST_BOT_NAME }}
|
|
|
|
edge_dev_win:
|
|
name: "Edge Dev (Win)"
|
|
runs-on: windows-latest
|
|
env:
|
|
PWTEST_BOT_NAME: "edge-dev-windows"
|
|
steps:
|
|
- uses: actions/checkout@v3
|
|
- uses: actions/setup-node@v3
|
|
with:
|
|
node-version: 18
|
|
- run: npm ci
|
|
env:
|
|
PLAYWRIGHT_SKIP_BROWSER_DOWNLOAD: 1
|
|
- run: npm run build
|
|
- run: npx playwright install --with-deps msedge-dev
|
|
- run: npm run ctest
|
|
shell: bash
|
|
env:
|
|
PWTEST_CHANNEL: msedge-dev
|
|
- run: ./utils/upload_flakiness_dashboard.sh ./test-results/report.json
|
|
if: always()
|
|
shell: bash
|
|
- name: Upload blob report
|
|
if: always()
|
|
uses: ./.github/actions/upload-blob-report
|
|
with:
|
|
report_dir: blob-report
|
|
job_name: ${{ env.PWTEST_BOT_NAME }}
|
|
|
|
edge_dev_linux:
|
|
name: "Edge Dev (Linux)"
|
|
runs-on: ubuntu-20.04
|
|
env:
|
|
PWTEST_BOT_NAME: "edge-dev-linux"
|
|
steps:
|
|
- uses: actions/checkout@v3
|
|
- uses: actions/setup-node@v3
|
|
with:
|
|
node-version: 18
|
|
- run: npm ci
|
|
env:
|
|
PLAYWRIGHT_SKIP_BROWSER_DOWNLOAD: 1
|
|
- run: npm run build
|
|
- run: npx playwright install --with-deps msedge-dev
|
|
- run: xvfb-run --auto-servernum --server-args="-screen 0 1280x960x24" -- npm run ctest
|
|
env:
|
|
PWTEST_CHANNEL: msedge-dev
|
|
- run: ./utils/upload_flakiness_dashboard.sh ./test-results/report.json
|
|
if: always()
|
|
shell: bash
|
|
- name: Upload blob report
|
|
if: always()
|
|
uses: ./.github/actions/upload-blob-report
|
|
with:
|
|
report_dir: blob-report
|
|
job_name: ${{ env.PWTEST_BOT_NAME }}
|
|
|
|
chrome_beta_linux:
|
|
name: "Chrome Beta (Linux)"
|
|
runs-on: ubuntu-20.04
|
|
env:
|
|
PWTEST_BOT_NAME: "chrome-beta-linux"
|
|
steps:
|
|
- uses: actions/checkout@v3
|
|
- uses: actions/setup-node@v3
|
|
with:
|
|
node-version: 18
|
|
- run: npm ci
|
|
env:
|
|
PLAYWRIGHT_SKIP_BROWSER_DOWNLOAD: 1
|
|
- run: npm run build
|
|
- run: npx playwright install --with-deps chrome-beta
|
|
- run: xvfb-run --auto-servernum --server-args="-screen 0 1280x960x24" -- npm run ctest
|
|
env:
|
|
PWTEST_CHANNEL: chrome-beta
|
|
- run: ./utils/upload_flakiness_dashboard.sh ./test-results/report.json
|
|
if: always()
|
|
shell: bash
|
|
- name: Upload blob report
|
|
if: always()
|
|
uses: ./.github/actions/upload-blob-report
|
|
with:
|
|
report_dir: blob-report
|
|
job_name: ${{ env.PWTEST_BOT_NAME }}
|
|
|
|
chrome_beta_win:
|
|
name: "Chrome Beta (Win)"
|
|
runs-on: windows-latest
|
|
env:
|
|
PWTEST_BOT_NAME: "chrome-beta-windows"
|
|
steps:
|
|
- uses: actions/checkout@v3
|
|
- uses: actions/setup-node@v3
|
|
with:
|
|
node-version: 18
|
|
- run: npm ci
|
|
env:
|
|
PLAYWRIGHT_SKIP_BROWSER_DOWNLOAD: 1
|
|
- run: npm run build
|
|
- run: npx playwright install --with-deps chrome-beta
|
|
- run: npm run ctest
|
|
shell: bash
|
|
env:
|
|
PWTEST_CHANNEL: chrome-beta
|
|
- run: ./utils/upload_flakiness_dashboard.sh ./test-results/report.json
|
|
if: always()
|
|
shell: bash
|
|
- name: Upload blob report
|
|
if: always()
|
|
uses: ./.github/actions/upload-blob-report
|
|
with:
|
|
report_dir: blob-report
|
|
job_name: ${{ env.PWTEST_BOT_NAME }}
|
|
|
|
chrome_beta_mac:
|
|
name: "Chrome Beta (Mac)"
|
|
runs-on: macos-latest
|
|
env:
|
|
PWTEST_BOT_NAME: "chrome-beta-mac"
|
|
steps:
|
|
- uses: actions/checkout@v3
|
|
- uses: actions/setup-node@v3
|
|
with:
|
|
node-version: 18
|
|
- run: npm ci
|
|
env:
|
|
PLAYWRIGHT_SKIP_BROWSER_DOWNLOAD: 1
|
|
- run: npm run build
|
|
- run: npx playwright install --with-deps chrome-beta
|
|
- run: npm run ctest
|
|
env:
|
|
PWTEST_CHANNEL: chrome-beta
|
|
- run: ./utils/upload_flakiness_dashboard.sh ./test-results/report.json
|
|
if: always()
|
|
shell: bash
|
|
- name: Upload blob report
|
|
if: always()
|
|
uses: ./.github/actions/upload-blob-report
|
|
with:
|
|
report_dir: blob-report
|
|
job_name: ${{ env.PWTEST_BOT_NAME }}
|
|
|
|
build-playwright-driver:
|
|
name: "build-playwright-driver"
|
|
runs-on: ubuntu-20.04
|
|
steps:
|
|
- uses: actions/checkout@v3
|
|
- uses: actions/setup-node@v3
|
|
with:
|
|
node-version: 18
|
|
- run: npm ci
|
|
- run: npm run build
|
|
- run: npx playwright install-deps
|
|
- run: utils/build/build-playwright-driver.sh
|
|
|
|
test_linux_chromium_headless_new:
|
|
name: Linux Chromium Headless New
|
|
runs-on: ubuntu-latest
|
|
env:
|
|
PWTEST_BOT_NAME: "headless-new"
|
|
steps:
|
|
- uses: actions/checkout@v3
|
|
- uses: actions/setup-node@v3
|
|
with:
|
|
node-version: 18
|
|
- run: npm ci
|
|
env:
|
|
DEBUG: pw:install
|
|
PLAYWRIGHT_SKIP_BROWSER_DOWNLOAD: 1
|
|
- run: npm run build
|
|
- run: npx playwright install --with-deps chromium
|
|
- run: xvfb-run --auto-servernum --server-args="-screen 0 1280x960x24" -- npm run test -- --project=chromium
|
|
env:
|
|
PLAYWRIGHT_CHROMIUM_USE_HEADLESS_NEW: 1
|
|
- run: node tests/config/checkCoverage.js chromium
|
|
- run: ./utils/upload_flakiness_dashboard.sh ./test-results/report.json
|
|
if: always()
|
|
shell: bash
|
|
- name: Upload blob report
|
|
if: always()
|
|
uses: ./.github/actions/upload-blob-report
|
|
with:
|
|
report_dir: blob-report
|
|
job_name: ${{ env.PWTEST_BOT_NAME }}
|