Skip to content

ci: Limit test runtime downloads - #333687

Draft
Dmitriy Vasyura (dmitrivMS) wants to merge 2 commits into
agents/split-ci-test-jobsfrom
agents/scope-test-runtime-downloads
Draft

ci: Limit test runtime downloads#333687
Dmitriy Vasyura (dmitrivMS) wants to merge 2 commits into
agents/split-ci-test-jobsfrom
agents/scope-test-runtime-downloads

Conversation

@dmitrivMS

Copy link
Copy Markdown
Collaborator

Summary

Reduces test runtime downloads by installing only the binaries each PR job uses:

  • Electron and Remote jobs download Electron without Playwright browsers
  • Linux and Windows Browser jobs install only the Chromium headless shell
  • macOS Browser installs the Chromium headless shell plus WebKit
  • Browser jobs skip Electron entirely
  • precompiles the browser integration runner so its local fallback does not reinstall every Playwright browser

This is stacked on #333662 to include its split Electron unit/integration jobs. Retarget to main after that PR merges.

Expected impact

The current unrestricted Playwright install downloads Chromium, Chromium Headless Shell, Firefox, WebKit, FFmpeg, and platform tools in every job. On Windows that is roughly 474 MB per job. The scoped Browser install is roughly 115 MB, while Electron and Remote jobs skip Playwright browser downloads entirely.

Across the post-#333662 matrix this should avoid roughly 6 GB of downloads per PR and save approximately 15-25 seconds in each Electron/Remote job.

Validation

  • npm run compile
  • compiled test/integration/browser directly
  • parsed all three reusable workflows and asserted their effective Electron, Remote, and Browser setup
  • verified Playwright --dry-run resolves only Chromium Headless Shell/FFmpeg/platform tools on Linux and Windows, plus WebKit on macOS
  • specialist review found no missing runtime, command syntax, expression, or coverage issues

Full npm run hygiene remains blocked on Windows by the existing C:\C:\...\remote\package.json path-resolution issue; workflow YAML is not covered by targeted hygiene.

Download Electron only for Electron and Remote jobs, and install only the headless Playwright browsers used by Browser jobs.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
@dmitrivMS Dmitriy Vasyura (dmitrivMS) added vscode-build VS Code build process issues engineering VS Code - Build / issue tracking / etc. labels Aug 31, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

engineering VS Code - Build / issue tracking / etc. vscode-build VS Code build process issues

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant