Skip to content

ci: stop the test-e2e job from hanging for 6 hours #4910

ci: stop the test-e2e job from hanging for 6 hours

ci: stop the test-e2e job from hanging for 6 hours #4910

Workflow file for this run

name: ci
on:
push:
branches:
- main
- "renovate/**"
pull_request:
concurrency:
group: ci-${{ github.ref }}
cancel-in-progress: true
jobs:
lint:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- uses: ./.github/actions/setup
with:
node-version: latest
- run: pnpm run lint
test-node-versions:
runs-on: ubuntu-latest
strategy:
matrix:
node-version: [22, 24]
steps:
- uses: actions/checkout@v6
- uses: ./.github/actions/setup
with:
node-version: ${{ matrix.node-version }}
- run: pnpm test
test-e2e:
runs-on: ubuntu-latest
# Use the official Playwright image, which ships Chromium, Firefox, WebKit and
# every system dependency they need. That removes the
# `playwright install --with-deps` step, which has been hanging until
# GitHub's 6-hour job limit on every run since 2026-08-24.
#
# Keep the tag in sync with the `@playwright/test` version in
# packages/openapi-fetch (currently 1.59.1).
container:
image: mcr.microsoft.com/playwright:v1.59.1-noble
# recommended by Playwright when running Chromium in a container
options: --ipc=host
# fail fast instead of occupying a runner for 6 hours if anything hangs
timeout-minutes: 15
steps:
- uses: actions/checkout@v6
- uses: ./.github/actions/setup
with:
node-version: 22
# this job installs in ~8s, so caching the store costs more than it saves
pnpm-cache: ""
- run: pnpm run test-e2e
env:
# Firefox refuses to start as root unless $HOME is owned by root, and
# GitHub sets HOME=/github/home, which is owned by pwuser. Chromium and
# WebKit start fine, so without this only the firefox project fails.
HOME: /root
test-macos:
runs-on: macos-latest
steps:
- uses: actions/checkout@v6
- uses: ./.github/actions/setup
with:
node-version: latest
- run: pnpm test
test-windows:
runs-on: windows-latest
steps:
- uses: actions/checkout@v6
- uses: ./.github/actions/setup
with:
node-version: latest
- run: pnpm test