diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index 446a3fc2..ad4e5180 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -308,7 +308,7 @@ jobs: timeout-minutes: 60 strategy: fail-fast: false - max-parallel: 2 + max-parallel: ${{ fromJSON(github.event_name == 'workflow_dispatch' && inputs.runner_pool == 'github-hosted' && '8' || '2') }} matrix: browser: [chromium, webkit, firefox] device: [mobile, desktop, tablet] diff --git a/tests/unit/playwright-full-workflow.spec.js b/tests/unit/playwright-full-workflow.spec.js index 9b0ee21e..4569d3bc 100644 --- a/tests/unit/playwright-full-workflow.spec.js +++ b/tests/unit/playwright-full-workflow.spec.js @@ -30,10 +30,12 @@ describe("Playwright full E2E workflow grouping", () => { ); }); - it("keeps full-suite runner pressure bounded and diagnosable", () => { + it("keeps self-hosted full-suite runner pressure bounded while hosted dispatch can fan out", () => { const source = workflowSource(); - expect(source).toMatch(/e2e-full:[\s\S]*?max-parallel: 2/u); + expect(source).toMatch( + /e2e-full:[\s\S]*?max-parallel: \$\{\{ fromJSON\(github\.event_name == 'workflow_dispatch' && inputs\.runner_pool == 'github-hosted' && '8' \|\| '2'\) \}\}/u + ); expect(source).toMatch(/e2e-full:[\s\S]*?PLAYWRIGHT_WORKERS: 1/u); expect(source).toMatch(/e2e-full:[\s\S]*?PLAYWRIGHT_VIDEO_MODE: off/u); expect(source).toContain("scripts/ci/with-systemd-inhibit.sh");