Skip to content

build(chrome): update the pinned browser version #9752

build(chrome): update the pinned browser version

build(chrome): update the pinned browser version #9752

Workflow file for this run

# This workflow will run headful and headless E2E tests.
name: E2E tests
# Declare default permissions as read only.
permissions: read-all
env:
DEBUG: 'bidi:server:*,bidi:mapper:*'
DEBUG_DEPTH: 10
FORCE_COLOR: 3
PIP_DISABLE_PIP_VERSION_CHECK: 1
on:
merge_group:
pull_request:
push:
branches: 'main'
workflow_dispatch:
inputs:
verbose:
description: Verbose logging
default: false
required: false
type: boolean
concurrency:
group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }}
cancel-in-progress: true
jobs:
e2e-required:
name: '[Required] e2e sink'
needs: [e2e]
runs-on: ubuntu-latest
if: always()
steps:
- if: ${{ needs.e2e.result != 'success' }}
run: 'exit 1'
- run: 'exit 0'
e2e:
name: ${{ matrix.this_chunk }}/${{ matrix.total_chunks }} ${{ matrix.os }}-${{ matrix.head }}
strategy:
fail-fast: false
matrix:
# TODO(#876): Add Windows CI.
# TODO(#2154): Use macos-latest once Python setup supports mac arm64.
os: [ubuntu-latest, macos-13]
head: [headful, 'new-headless', 'old-headless']
total_chunks: [4]
this_chunk: [0, 1, 2, 3]
exclude:
- os: macos-13
head: new-headless
- os: macos-13
head: old-headless
runs-on: ${{ matrix.os }}
steps:
- name: Checkout
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
- name: Set up Node.js
uses: actions/setup-node@60edb5dd545a775178f52524783378180af0d1f8 # v4.0.2
with:
node-version-file: '.nvmrc'
cache: npm
- uses: google/wireit@4aad131006ea85c1e42af927534ebb13426dd730 # setup-github-actions-caching/v1.0.2
- name: Install and build npm dependencies
run: npm ci
- name: Setup cache for browser binaries
uses: actions/cache@0c45773b623bea8c8e75f6c82b208c3cf94ea4f9 # v4.0.2
with:
path: ~/.cache/chromium-bidi
key: ${{ runner.os }}-browsers-${{ hashFiles('.browser') }}) }}
- name: Install pinned browser
id: browser
run: node tools/install-browser.mjs --github
- name: Set up Python
uses: actions/setup-python@82c7e631bb3cdc910f68e0081d67478d79c6982d # v5.1.0
with:
python-version: '3.11'
cache: pipenv
- name: Install pipenv
run: pip install pipenv
- name: Install python dependencies
run: pipenv install
- name: Run E2E tests
if: matrix.os == 'ubuntu-latest' && matrix.head == 'headful'
timeout-minutes: 20
run: >
xvfb-run --auto-servernum
npm run e2e:${{ matrix.head }}
--
--this-chunk=${{ matrix.this_chunk }}
--total-chunks=${{ matrix.total_chunks }}
env:
BROWSER_BIN: ${{ steps.browser.outputs.executablePath }}
VERBOSE: ${{ github.event.inputs.verbose }}
- name: Run E2E tests
if: matrix.os != 'ubuntu-latest' || matrix.head != 'headful'
timeout-minutes: 20
run: >
npm run e2e:${{ matrix.head }}
--
--this-chunk=${{ matrix.this_chunk }}
--total-chunks=${{ matrix.total_chunks }}
env:
BROWSER_BIN: ${{ steps.browser.outputs.executablePath }}
VERBOSE: ${{ github.event.inputs.verbose }}
- name: Upload artifacts
if: always()
uses: actions/upload-artifact@65462800fd760344b1a7b4382951275a0abb4808 # v4.3.3
with:
name: ${{ matrix.os }}-${{ matrix.head }}-${{ matrix.this_chunk }}-artifacts
path: logs