Skip to content

fix(ci): install ImageMagick + Playwright Chromium in test job#14

Merged
richsak merged 4 commits intodevfrom
fix/ci-baseline-binaries
Apr 26, 2026
Merged

fix(ci): install ImageMagick + Playwright Chromium in test job#14
richsak merged 4 commits intodevfrom
fix/ci-baseline-binaries

Conversation

@richsak
Copy link
Copy Markdown
Owner

@richsak richsak commented Apr 26, 2026

Summary

The validate job's "Run tests" step has been failing on dev for a while with two missing-binary errors:

  • magick not in $PATH — heatmap renderer in scripts/visual-assets.ts shells out to ImageMagick. Ubuntu runners don't include it by default.
  • Playwright Chromium executable missing — browser-audit tests launch Chromium via Playwright. The bundled package needs an explicit playwright install to fetch the headless browser.

Adds both as steps before "Run tests" so the dev baseline goes green again and downstream PRs stop inheriting the red CI.

Test plan

  • CI run on this PR passes the validate job (specifically the "Run tests" step)
  • No new warnings introduced in shellcheck/actionlint/site-build

🤖 Generated with Claude Code

The validate job's "Run tests" step was failing on dev with two
missing-binary errors:

- `magick` not in $PATH — visual-assets / heatmap rendering shells out
  to ImageMagick. Ubuntu runners do not include it by default.
- Playwright Chromium executable missing — browser-audit tests launch
  Chromium via Playwright. The bundled `playwright` package needs an
  explicit `playwright install` to fetch the headless browser.

Adds both as steps before "Run tests" so the dev/main baseline goes
green again and downstream PRs stop inheriting the red.
@coderabbitai
Copy link
Copy Markdown

coderabbitai Bot commented Apr 26, 2026

Important

Review skipped

Auto reviews are disabled on base/target branches other than the default branch.

🗂️ Base branches to auto review (2)
  • main
  • review/empty-base

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Run ID: 72bbd8da-7a64-4cfd-afaa-f6c5c2d1b629

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch fix/ci-baseline-binaries

Comment @coderabbitai help to get the list of available commands and usage tips.

richsak added 3 commits April 26, 2026 16:42
Ubuntu's `imagemagick` package ships v6 binaries (convert, mogrify),
not v7's unified `magick` entrypoint. scripts/build-demo-manifest.ts
calls `execFileSync("magick", ...)` so the v7 name is required.

Symlink `magick` -> `$(which convert)` after the apt install. The
chained-argv syntax we use is v6-compatible.
The apt imagemagick package provides v6-only binaries. The repo uses
v7 multi-call dispatch (magick, magick identify, ...) which v6 cannot
satisfy via convert symlinks. Pull the v7 portable binary from the
official ImageMagick release and drop it into /usr/local/bin.
Portable ImageMagick 7 binary URL was 404 — no canonical 'magick' static
release exists at imagemagick.org. Switch back to apt's v6 install and
add a small bash dispatcher at /usr/local/bin/magick that forwards to
the v6 binary based on the subcommand. Handles 'magick (...)',
'magick identify ...', and the other tools the repo uses.
@richsak richsak merged commit 5a8a51d into dev Apr 26, 2026
5 checks passed
@richsak richsak deleted the fix/ci-baseline-binaries branch April 26, 2026 23:49
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.

1 participant