export default {
async fetch(): Promise<Response> {
// Return 400 for direct HTTP requests since workflows should be triggered via bindings
return Response.json(
{ error: "Workflows must be triggered via bindings" },
{ status: 400 },
);
},
async create({ params }: { params: InitSyncParams }, env: Env) {
const workflow = await env.SYNC_REPO_INIT_WORKFLOW.create({ params });
return workflow.id;
},
async terminate(id: string, env: Env) {
const instance = await env.SYNC_REPO_INIT_WORKFLOW.get(id);
await instance.terminate();
},
async getInstanceStatus(id: string, env: Env) {
const instance = await env.SYNC_REPO_INIT_WORKFLOW.get(id);
return await instance.status();
},
};
export default {
async fetch(): Promise<Response> {
// Return 400 for direct HTTP requests since workflows should be triggered via bindings
return Response.json(
{ error: "Workflows must be triggered via bindings" },
{ status: 400 },
);
},
async create({ params }: { params: InitSyncParams }, env: Env) {
const workflow = await env.SYNC_REPO_INIT_WORKFLOW.create({ params });
return workflow.id;
},
async terminate(id: string, env: Env) {
const instance = await env.SYNC_REPO_INIT_WORKFLOW.get(id);
await instance.terminate();
},
async getInstanceStatus(id: string, env: Env) {
const instance = await env.SYNC_REPO_INIT_WORKFLOW.get(id);
return await instance.status();
},
};