sing-ui/app/api/runs/[id]/route.ts

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 });
}
}