mirror of
https://github.com/garrytan/gstack.git
synced 2026-05-22 04:38:24 +08:00
feat: add Chromium to CI Docker image for browse E2E tests
Browse E2E tests (browse basic, browse snapshot) need Playwright + Chromium to render pages. The CI container didn't have a browser installed, so the agent spent all turns trying to start the browse server and failing. Adds Playwright system deps + Chromium browser to the Docker image. ~400MB image size increase but enables full browse test coverage in CI. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
10
.github/docker/Dockerfile.ci
vendored
10
.github/docker/Dockerfile.ci
vendored
@@ -29,13 +29,21 @@ RUN curl -fsSL https://bun.sh/install | bash
|
|||||||
# Claude CLI
|
# Claude CLI
|
||||||
RUN npm i -g @anthropic-ai/claude-code
|
RUN npm i -g @anthropic-ai/claude-code
|
||||||
|
|
||||||
|
# Playwright system deps (Chromium) — needed for browse E2E tests
|
||||||
|
# Install deps first (large layer, changes rarely), then Playwright + browser
|
||||||
|
RUN npx playwright install-deps chromium
|
||||||
|
|
||||||
# Pre-install dependencies (cached layer — only rebuilds when package.json changes)
|
# Pre-install dependencies (cached layer — only rebuilds when package.json changes)
|
||||||
COPY package.json /workspace/
|
COPY package.json /workspace/
|
||||||
WORKDIR /workspace
|
WORKDIR /workspace
|
||||||
RUN bun install && rm -rf /tmp/*
|
RUN bun install && rm -rf /tmp/*
|
||||||
|
|
||||||
|
# Install Playwright Chromium browser (uses deps installed above)
|
||||||
|
RUN npx playwright install chromium
|
||||||
|
|
||||||
# Verify everything works
|
# Verify everything works
|
||||||
RUN bun --version && node --version && claude --version && jq --version && gh --version
|
RUN bun --version && node --version && claude --version && jq --version && gh --version \
|
||||||
|
&& npx playwright --version
|
||||||
|
|
||||||
# At runtime: checkout overwrites /workspace, but node_modules persists
|
# At runtime: checkout overwrites /workspace, but node_modules persists
|
||||||
# if we move it out of the way and symlink back
|
# if we move it out of the way and symlink back
|
||||||
|
|||||||
Reference in New Issue
Block a user