mirror of
https://github.com/rennf93/roboco.git
synced 2026-08-03 07:23:24 +02:00
23 lines
1.2 KiB
JavaScript
23 lines
1.2 KiB
JavaScript
// Build-time only: verify Chrome Headless Shell is installed so a
|
|
// container's first real render isn't also the first time it fetches a
|
|
// browser. Run once as a Docker RUN step after `pnpm install` (see
|
|
// docker/remotion.Dockerfile).
|
|
//
|
|
// The actual download is performed by puppeteer's postinstall (approved in
|
|
// pnpm-workspace.yaml), which lands chrome-headless-shell in
|
|
// ~/.cache/puppeteer/chrome-headless-shell/ — the cache
|
|
// @hyperframes/engine's resolveHeadlessShellPath scans at render time. This
|
|
// script just verifies the binary is present and fails loud if not, so a
|
|
// broken/missed download surfaces at image build time, not mid-render.
|
|
import { resolveHeadlessShellPath } from "@hyperframes/engine";
|
|
|
|
const shellPath = await resolveHeadlessShellPath();
|
|
if (!shellPath) {
|
|
console.error(
|
|
"Chrome Headless Shell not found in ~/.cache/puppeteer/chrome-headless-shell/. " +
|
|
"puppeteer's postinstall (approved in pnpm-workspace.yaml) should have downloaded it — " +
|
|
"re-run `pnpm install` or run `npx @puppeteer/browsers install chrome-headless-shell@stable`.",
|
|
);
|
|
process.exit(1);
|
|
}
|
|
console.log(`Chrome Headless Shell ready at ${shellPath}.`); |