mirror of
https://github.com/openclaw/openclaw.git
synced 2026-05-27 23:30:21 +00:00
ci(release): bypass pnpm for tsdown package build
This commit is contained in:
@@ -257,17 +257,28 @@ export function createTsdownOutputScanner(params = {}) {
|
||||
|
||||
export function resolveTsdownBuildInvocation(params = {}) {
|
||||
const env = resolveTsdownEnv(params.env ?? process.env);
|
||||
const tsdownArgs = [
|
||||
"--config-loader",
|
||||
"unrun",
|
||||
"--logLevel",
|
||||
logLevel,
|
||||
"--no-clean",
|
||||
...extraArgs,
|
||||
];
|
||||
if (env.OPENCLAW_BUILD_ALL_NO_PNPM === "1") {
|
||||
return {
|
||||
command: params.nodeExecPath ?? process.execPath,
|
||||
args: ["node_modules/tsdown/dist/run.mjs", ...tsdownArgs],
|
||||
options: {
|
||||
stdio: ["ignore", "pipe", "pipe"],
|
||||
shell: false,
|
||||
windowsVerbatimArguments: undefined,
|
||||
env,
|
||||
},
|
||||
};
|
||||
}
|
||||
const runner = resolvePnpmRunner({
|
||||
pnpmArgs: [
|
||||
"exec",
|
||||
"tsdown",
|
||||
"--config-loader",
|
||||
"unrun",
|
||||
"--logLevel",
|
||||
logLevel,
|
||||
"--no-clean",
|
||||
...extraArgs,
|
||||
],
|
||||
pnpmArgs: ["exec", "tsdown", ...tsdownArgs],
|
||||
nodeExecPath: params.nodeExecPath ?? process.execPath,
|
||||
npmExecPath: params.npmExecPath ?? env.npm_execpath,
|
||||
comSpec: params.comSpec ?? env.ComSpec,
|
||||
|
||||
@@ -69,6 +69,34 @@ describe("resolveTsdownBuildInvocation", () => {
|
||||
expect(result.options.env.NODE_OPTIONS).toBe("--trace-warnings --max-old-space-size=8192");
|
||||
});
|
||||
|
||||
it("can run tsdown without invoking pnpm", () => {
|
||||
const result = resolveTsdownBuildInvocation({
|
||||
nodeExecPath: "/usr/bin/node",
|
||||
env: { OPENCLAW_BUILD_ALL_NO_PNPM: "1" },
|
||||
});
|
||||
|
||||
expect(result).toEqual({
|
||||
command: "/usr/bin/node",
|
||||
args: [
|
||||
"node_modules/tsdown/dist/run.mjs",
|
||||
"--config-loader",
|
||||
"unrun",
|
||||
"--logLevel",
|
||||
"warn",
|
||||
"--no-clean",
|
||||
],
|
||||
options: {
|
||||
stdio: ["ignore", "pipe", "pipe"],
|
||||
shell: false,
|
||||
windowsVerbatimArguments: undefined,
|
||||
env: {
|
||||
NODE_OPTIONS: "--max-old-space-size=6144",
|
||||
OPENCLAW_BUILD_ALL_NO_PNPM: "1",
|
||||
},
|
||||
},
|
||||
});
|
||||
});
|
||||
|
||||
it("keeps source-checkout prune best-effort", () => {
|
||||
const warn = vi.spyOn(console, "warn").mockImplementation(() => {});
|
||||
const rmSync = vi.spyOn(fs, "rmSync");
|
||||
|
||||
Reference in New Issue
Block a user