26 lines
680 B
TypeScript
26 lines
680 B
TypeScript
import fs from "fs";
|
|
import { getRun } from "@/lib/db";
|
|
|
|
export const runtime = "nodejs";
|
|
export const dynamic = "force-dynamic";
|
|
|
|
export async function GET(
|
|
_request: Request,
|
|
{ params }: { params: Promise<{ id: string }> }
|
|
) {
|
|
try {
|
|
const { id } = await params;
|
|
const run = getRun(Number(id));
|
|
if (!run) {
|
|
return Response.json({ error: "run not found" }, { status: 404 });
|
|
}
|
|
let log = "";
|
|
if (run.log_path && fs.existsSync(run.log_path)) {
|
|
log = fs.readFileSync(run.log_path, "utf8");
|
|
}
|
|
return Response.json({ ...run, log });
|
|
} catch (err) {
|
|
return Response.json({ error: (err as Error).message }, { status: 500 });
|
|
}
|
|
}
|