fix(ci): move the e2e base image to Debian bookworm - #201
Merged
Merged
Conversation
Debian 11 bullseye reached the end of LTS support on 2026-08-31. The bullseye-security package pool no longer exists on deb.debian.org, so "playwright install --with-deps" fails with 404 errors and the e2e image build stops. This breaks the four node-24 jobs on every pull request and on master. Debian 12 bookworm keeps security support until 2028, and Playwright 1.48.0 supports it. The pinned Playwright version does not change. Verified on linux/amd64: the e2e_pip target builds for both the latest and the nightly Streamlit version, and webkit, chromium, and firefox all launch in the image. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
sfc-gh-lmasuch
approved these changes
Sep 15, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Why
CI is red on
masterand on every open pull request. Debian 11 bullseye reached the end of LTS support on 2026-08-31. Thebullseye-securitypackage pool no longer exists ondeb.debian.org, soplaywright install --with-depsfails and the e2e image build stops:61 packages return 404, all of them from
debian-security. This breaks the fournode_version=24.xjobs, because those are the only jobs that run e2e tests.The error text moved over the last week. On 2026-09-10 apt reported
Release file ... is expired. Debian republished that index on 2026-09-12 without aValid-Untilheader, so the index loads again and the failure moved to the package files. The cause is the same, and it is permanent.What
Move the e2e base image from
python:3.13-slim-bullseyetopython:3.13-slim-bookworm. Debian 12 bookworm keeps security support until 2028, and Playwright 1.48.0 supports it. The pinned Playwright version does not change.Testing
Verified locally on
linux/amd64:python:3.13-slim-bullseyefails theplaywright install --with-depsstep, as above.python:3.13-slim-bookwormbuilds thee2e_piptarget forSTREAMLIT_VERSION=latest(1.63.0) andSTREAMLIT_VERSION=nightly(1.63.1.dev20260913).webkit18.0,chromium130.0.6723.31, andfirefox131.0 all launch and render a page in the built image.The repo commits no screenshot snapshots, so the OS change carries no snapshot risk. The e2e tests assert on the DOM only.
Follow-ups, out of scope here
DockerfiledeclaresARG PYTHON_VERSIONbut never uses it. CI passes3.10and the image runs Python 3.13.playwright==1.48.0is pinned in 7 places. That release is from October 2024.🤖 Generated with Claude Code