Skip to content

devops(docker): split browser layers and use zstd compression for faster pulls#41232

Open
KRRT7 wants to merge 11 commits into
microsoft:mainfrom
KRRT7:retrying
Open

devops(docker): split browser layers and use zstd compression for faster pulls#41232
KRRT7 wants to merge 11 commits into
microsoft:mainfrom
KRRT7:retrying

Conversation

@KRRT7

@KRRT7 KRRT7 commented Jun 10, 2026

Copy link
Copy Markdown
Contributor

This reverts commit 67930e8, reapplying #40702.

Closes #40701.

@KRRT7

KRRT7 commented Jun 10, 2026

Copy link
Copy Markdown
Contributor Author

@dgozman ^^

@dcrousso dcrousso left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

it doesnt look like anything has changed since #40702 to fix the issues that resulted in it being rolled out in #41081

@KRRT7

KRRT7 commented Jun 10, 2026

Copy link
Copy Markdown
Contributor Author

@dcrousso I tagged them so that they'd trigger the GHAs, I have no idea what you guys saw, I've been using it on my linux / macOS machines with no issues, I'd need to trigger the issue for me to be able to debug

edit: sorry, could've been clearer about my intentions

@KRRT7

KRRT7 commented Jun 10, 2026

Copy link
Copy Markdown
Contributor Author

as per #41081 (comment) without the logs, best I can hope for is for it to get triggered in your CI for me to be able to analyze.

@github-actions

This comment has been minimized.

@github-actions

This comment has been minimized.

@KRRT7 KRRT7 requested a review from dcrousso June 10, 2026 22:10
@KRRT7

KRRT7 commented Jun 10, 2026

Copy link
Copy Markdown
Contributor Author

hmm, ok, I think I know what's up.

@github-actions

This comment has been minimized.

@github-actions

This comment has been minimized.

@dgozman

dgozman commented Jun 12, 2026

Copy link
Copy Markdown
Collaborator

@KRRT7 Seems to be still failing.

@KRRT7

KRRT7 commented Jun 16, 2026

Copy link
Copy Markdown
Contributor Author

@dgozman sorry for the delay, should be good now, I tried it on my MacOS and via dockers and now everything passes for the issues I found

@github-actions

This comment has been minimized.

@github-actions

This comment has been minimized.

Comment thread utils/docker/Dockerfile.jammy Outdated
rm -rf ~/.npm/ && \
chmod -R 777 /ms-playwright
# Keep the full browser registry writable for later npm ci runs, including .links.
chmod -R a+rwx /ms-playwright && \

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Won't this touch the whole /ms-playwright, including previously installed browsers, and make the last layer very large? Perhaps move this to the first layer instead?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

yep, thank you

@@ -11,7 +11,6 @@ ENV LC_ALL=C.UTF-8
# === INSTALL Node.js ===

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Note we also have Dockerfile.resolute now.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

updated it

@github-actions

This comment has been minimized.

@github-actions

This comment has been minimized.

@KRRT7

KRRT7 commented Jun 16, 2026

Copy link
Copy Markdown
Contributor Author

geez, dunno why it fails on there but not locally, let me take another look

@KRRT7

KRRT7 commented Jun 16, 2026

Copy link
Copy Markdown
Contributor Author

I refactored the shared browser install logic into utils/docker/install_browsers.sh so jammy/noble/resolute stay in sync going forward while preserving separate Docker RUN layers for chromium/firefox/webkit.

@dgozman dgozman left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

I think we went backwards, from an almost-working solution to a larger refactoring that is less likely to land.

Comment thread utils/docker/install_browsers.sh Outdated
Comment thread utils/docker/test_docker.sh Outdated
@github-actions

Copy link
Copy Markdown
Contributor

Test results for "MCP"

1 failed
❌ [chrome] › mcp/http.spec.ts:348 › client should receive list roots request @mcp-ubuntu-latest-chrome

7353 passed, 1122 skipped


Merge workflow run.

@github-actions

Copy link
Copy Markdown
Contributor

Test results for "tests 1"

3 flaky ⚠️ [chromium-library] › library/video.spec.ts:717 › screencast › should work with video+trace `@chromium-ubuntu-22.04-arm-node20`
⚠️ [chromium-library] › library/beforeunload.spec.ts:130 › should support dismissing the dialog multiple times `@chromium-ubuntu-22.04-node20`
⚠️ [firefox-library] › library/inspector/cli-codegen-3.spec.ts:224 › cli codegen › should generate frame locators (4) `@firefox-ubuntu-22.04-node20`

39599 passed, 744 skipped


Merge workflow run.

@dgozman dgozman changed the title Reapply "devops(docker): split browser layers and use zstd compressio… devops(docker): split browser layers and use zstd compression for faster pulls Jun 24, 2026
@KRRT7

KRRT7 commented Jun 24, 2026

Copy link
Copy Markdown
Contributor Author

seems like the test is just flaky, luckily for me.

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.

[Feature]: Reduce Docker image size to improve container pull time

3 participants