Files
PaperClipAI/tests/runner-e2e/source-startup.ts
T

21 lines
768 B
TypeScript

import { execFile } from "node:child_process";
import path from "node:path";
import { promisify } from "node:util";
import { retainPreparedSourceSdk } from "./source-sdk-evidence.js";
export async function prepareSourceServerDependencies(
repositoryRoot: string,
environment: NodeJS.ProcessEnv,
installed: boolean,
evidence?: { temporaryRoot: string; executionIds: readonly string[]; sourceRevision: string | null },
) {
if (installed) return;
await promisify(execFile)(process.execPath, [path.join(repositoryRoot, "scripts/ensure-plugin-build-deps.mjs")], {
cwd: repositoryRoot,
env: environment,
timeout: 120_000,
maxBuffer: 1024 * 1024,
});
if (evidence) await retainPreparedSourceSdk({ repositoryRoot, ...evidence, installed });
}