Files
clawhub/scripts/vercel-build-frontend.ts
T
Patrick Erichsen dfca6f5d9d feat: add disposable Vercel and Convex PR previews (#3017)
Adds isolated Convex-backed Vercel PR previews with shared local/preview seeding, preview-safe routing, and production guards.
2026-07-08 20:54:09 -07:00

37 lines
978 B
TypeScript

#!/usr/bin/env bun
import { spawnSync } from "node:child_process";
import { resolveConvexSiteUrl } from "../src/lib/convexDeploymentUrl";
export function resolveFrontendBuildEnv(env: NodeJS.ProcessEnv) {
const convexSiteUrl = resolveConvexSiteUrl({
CONVEX_URL: env.CONVEX_URL,
VITE_CONVEX_SITE_URL: env.VERCEL_ENV === "preview" ? undefined : env.VITE_CONVEX_SITE_URL,
VITE_CONVEX_URL: env.VITE_CONVEX_URL,
});
return {
...env,
VITE_CONVEX_SITE_URL: convexSiteUrl,
VITE_CLAWHUB_DEPLOY_ENV: env.VERCEL_ENV ?? "development",
};
}
function main() {
const result = spawnSync("bun", ["run", "build"], {
cwd: process.cwd(),
env: resolveFrontendBuildEnv(process.env),
stdio: "inherit",
});
if (result.error) throw result.error;
process.exit(result.status ?? 1);
}
if (import.meta.main) {
try {
main();
} catch (error) {
console.error(error instanceof Error ? error.message : String(error));
process.exit(1);
}
}