70bf21e064
Handle Changesets / Handle Changesets (push) Waiting to run
Semgrep OSS scan / semgrep-oss (push) Waiting to run
Deploy (to testing) and Test Playground Preview Worker / Deploy Playground Preview Worker (testing) (push) Has been skipped
Deploy Workers Shared Staging / Deploy Workers Shared Staging (push) Failing after 0s
Prerelease / build (push) Has been skipped
56 lines
1.3 KiB
TypeScript
56 lines
1.3 KiB
TypeScript
import { execFileSync } from "node:child_process";
|
|
import { rmSync } from "node:fs";
|
|
import path from "node:path";
|
|
import * as esbuild from "esbuild";
|
|
|
|
function resolve(...segments: string[]) {
|
|
return path.resolve(__dirname, "..", ...segments);
|
|
}
|
|
|
|
async function main() {
|
|
try {
|
|
// eslint-disable-next-line workers-sdk/no-direct-recursive-rm -- build script runs via esbuild-register (CJS) which can't import the ESM-only workers-utils package
|
|
rmSync(resolve("dist"), {
|
|
recursive: true,
|
|
force: true,
|
|
maxRetries: 5,
|
|
retryDelay: 100,
|
|
});
|
|
} catch {}
|
|
|
|
console.log("Building asset-server...");
|
|
await esbuild.build({
|
|
entryPoints: ["asset-server/**/*"],
|
|
format: "esm",
|
|
bundle: true,
|
|
sourcemap: "external",
|
|
external: ["cloudflare:*", "node:*"],
|
|
outdir: resolve("dist/asset-server/"),
|
|
});
|
|
|
|
console.log("Building metadata-generator...");
|
|
await esbuild.build({
|
|
entryPoints: ["metadata-generator/**/*"],
|
|
format: "esm",
|
|
bundle: true,
|
|
sourcemap: "external",
|
|
external: ["cloudflare:*", "node:*"],
|
|
outdir: resolve("dist/metadata-generator"),
|
|
});
|
|
|
|
console.log("Generating types...");
|
|
execFileSync("tsc", ["-p", "tsconfig.build.json"], {
|
|
stdio: "inherit",
|
|
shell: true,
|
|
});
|
|
|
|
console.log("\n✅ Build completed.");
|
|
}
|
|
|
|
main()
|
|
.then(() => process.exit(0))
|
|
.catch((e) => {
|
|
console.error(e);
|
|
process.exit(1);
|
|
});
|