Skip to content

Fix E2E workflow hanging after Playwright Chromium download#1

Open
Matt-Anis wants to merge 3 commits into
fullstack-hy2020:mainfrom
Matt-Anis:main
Open

Fix E2E workflow hanging after Playwright Chromium download#1
Matt-Anis wants to merge 3 commits into
fullstack-hy2020:mainfrom
Matt-Anis:main

Conversation

@Matt-Anis

Copy link
Copy Markdown

Problem

The current workflow uses npx playwright install chromium --with-deps which downloads a 170MB Chromium binary and then hangs silently during the post-extraction phase on GitHub's ubuntu-latest runners, eventually getting killed by the job timeout.

GitHub Actions ubuntu-latest runners already have Google Chrome pre-installed, so downloading Playwright's own Chromium binary is unnecessary.

Fix:

Remove the npx playwright install chromium --with-deps step from the workflow entirely
Add channel: 'chrome' to the Playwright project config, which tells Playwright to use the system Chrome instead of its own binary

This makes the workflow faster and eliminates the hanging issue entirely.

Before:

workflow_before workflow_before_hanging

After

workflow_after

Copilot AI review requested due to automatic review settings July 1, 2026 00:10

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR updates the Chapter 5 E2E GitHub Actions workflow to avoid downloading Playwright’s bundled Chromium and instead run tests against the runner’s preinstalled Google Chrome, addressing a hang during browser installation.

Changes:

  • Removed the npx playwright install chromium --with-deps step from the Chapter 5 E2E workflow.
  • Updated the Playwright project configuration to use the chrome channel (system Chrome) for Chromium-based runs.

Reviewed changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated 1 comment.

File Description
tests-chapter5/playwright.config.js Configures Playwright to use system Chrome via channel: 'chrome'.
.github/workflows/test-chapter5.yml Removes the Playwright browser install step to prevent the workflow hang/timeouts.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

{
name: 'chromium',
use: { ...devices['Desktop Chrome'] },
use: { ...devices['Desktop Chrome'], channel: 'chrome'},
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants