Files
HiveGrid-Wireframes/hivegrid-cloud/apps/worker/scripts/build.mjs
T

36 lines
1.0 KiB
JavaScript

import { build } from "esbuild";
const sourcemap = process.env.SOURCEMAP === "true" || process.env.BUILD_SOURCEMAPS === "true";
const externalBarePackagesPlugin = {
name: "external-bare-packages",
setup(builder) {
builder.onResolve({ filter: /^[^./]|^\.[^./]|^\.\.[^/]/ }, (args) => {
if (args.path === "@toolctrl/queue/runtime" || args.path.startsWith("@toolctrl/queue/runtime/")) {
return { path: args.path, external: true };
}
if (args.path.startsWith("@toolctrl/")) {
return undefined;
}
return { path: args.path, external: true };
});
},
};
await build({
entryPoints: ["src/index.ts", "src/health.ts", "src/jobs/plugin-sandbox-worker.ts"],
outdir: "dist",
bundle: true,
platform: "node",
format: "esm",
target: "node20",
sourcemap,
banner: {
js: 'import { createRequire as __toolctrlCreateRequire } from "node:module"; const require = __toolctrlCreateRequire(import.meta.url);',
},
logLevel: "warning",
plugins: [externalBarePackagesPlugin],
});