From 7c2dad47cc5bf44326aede5583c536612a5e4ba6 Mon Sep 17 00:00:00 2001 From: Frederic Cabassut Date: Tue, 10 Mar 2026 23:39:20 +0100 Subject: [PATCH] ci: use Playwright container image instead of downloading browsers Run E2E tests inside mcr.microsoft.com/playwright container which has Chromium pre-installed, eliminating the ~30s browser download on each run. Co-Authored-By: Claude Opus 4.6 --- .github/workflows/ci.yml | 18 +++--------------- 1 file changed, 3 insertions(+), 15 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 3830694..2e9580d 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -62,6 +62,8 @@ jobs: e2e-tests: name: E2E Tests runs-on: ubuntu-latest + container: + image: mcr.microsoft.com/playwright:v1.58.0-noble steps: - uses: actions/checkout@v4 @@ -76,21 +78,6 @@ jobs: - run: pnpm install --frozen-lockfile - - name: Cache Playwright Browsers - id: playwright-cache - uses: actions/cache@v4 - with: - path: ~/.cache/ms-playwright - key: playwright-${{ runner.os }}-${{ hashFiles('pnpm-lock.yaml') }} - - - name: Install Playwright Browsers - if: steps.playwright-cache.outputs.cache-hit != 'true' - run: npx playwright install --with-deps chromium - - - name: Install Playwright System Dependencies - if: steps.playwright-cache.outputs.cache-hit == 'true' - run: npx playwright install-deps chromium - - name: Build (with coverage instrumentation) run: pnpm build env: @@ -102,6 +89,7 @@ jobs: env: CI: true VITE_COVERAGE: 'true' + HOME: /root - name: Merge E2E coverage if: always()