2026-05-28 18:37:07 +08:00
|
|
|
|
/**
|
|
|
|
|
|
* 压测脚本根目录及 CLI/monorepo 路径解析。
|
|
|
|
|
|
*/
|
|
|
|
|
|
import { dirname, join } from "node:path";
|
|
|
|
|
|
import { fileURLToPath } from "node:url";
|
|
|
|
|
|
|
|
|
|
|
|
/** 当前文件所在 lib 目录 */
|
|
|
|
|
|
const LIB_DIR = dirname(fileURLToPath(import.meta.url));
|
|
|
|
|
|
|
|
|
|
|
|
/** `packages/cli/tests/stress` */
|
|
|
|
|
|
export const STRESS_ROOT = join(LIB_DIR, "..");
|
|
|
|
|
|
|
|
|
|
|
|
/** `packages/cli` */
|
|
|
|
|
|
export const DEFAULT_CLI_PACKAGE = join(STRESS_ROOT, "..", "..");
|
|
|
|
|
|
|
|
|
|
|
|
/** monorepo 根目录 */
|
|
|
|
|
|
export const MONOREPO_ROOT = join(DEFAULT_CLI_PACKAGE, "..", "..");
|
|
|
|
|
|
|
2026-07-09 19:39:13 +08:00
|
|
|
|
/** CLI 入口 main.ts(由仓库本地 tsx 执行) */
|
2026-05-28 18:37:07 +08:00
|
|
|
|
export function resolveMainTs(cliPackage = DEFAULT_CLI_PACKAGE) {
|
|
|
|
|
|
return join(cliPackage, "src", "main.ts");
|
|
|
|
|
|
}
|
2026-07-09 19:39:13 +08:00
|
|
|
|
|
|
|
|
|
|
/** monorepo 本地 bin 路径,避免 `pnpm run` 生命周期日志污染 stdout */
|
|
|
|
|
|
export function resolveLocalBin(name) {
|
|
|
|
|
|
return join(
|
|
|
|
|
|
MONOREPO_ROOT,
|
|
|
|
|
|
"node_modules",
|
|
|
|
|
|
".bin",
|
|
|
|
|
|
process.platform === "win32" ? `${name}.cmd` : name,
|
|
|
|
|
|
);
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/** tsx 可执行文件路径 */
|
|
|
|
|
|
export function resolveTsxBin() {
|
|
|
|
|
|
return resolveLocalBin("tsx");
|
|
|
|
|
|
}
|