Files
supervisor-ui/app/api/supervisor/groups/[name]/start/route.ts

31 lines
900 B
TypeScript
Raw Normal View History

import { NextRequest, NextResponse } from 'next/server';
import { createSupervisorClient } from '@/lib/supervisor/client';
interface RouteParams {
params: Promise<{ name: string }>;
}
// POST - Start all processes in a group
export async function POST(request: NextRequest, { params }: RouteParams) {
try {
const { name } = await params;
const body = await request.json().catch(() => ({}));
const wait = body.wait ?? true;
const client = createSupervisorClient();
const results = await client.startProcessGroup(name, wait);
return NextResponse.json({
success: true,
message: `Started process group: ${name}`,
results,
});
} catch (error: any) {
console.error('Supervisor start process group error:', error);
return NextResponse.json(
{ error: error.message || 'Failed to start process group' },
{ status: 500 }
);
}
}