diff --git a/apps/api/src/jobs/scheduled-cost-sync-handler.ts b/apps/api/src/jobs/scheduled-cost-sync-handler.ts new file mode 100644 index 0000000..d1ebe35 --- /dev/null +++ b/apps/api/src/jobs/scheduled-cost-sync-handler.ts @@ -0,0 +1,18 @@ +export const handler = async (): Promise<{ + statusCode: number; + body: string; +}> => { + try { + const { runScheduledCostSync } = await import("./scheduled-cost-sync.js"); + const result = await runScheduledCostSync(); + + return { + statusCode: 200, + body: JSON.stringify(result), + }; + } catch (error) { + console.error("Scheduled cost sync Lambda bootstrap failed", error); + throw error; + } +}; + diff --git a/apps/api/src/jobs/scheduled-cost-sync.lambda.ts b/apps/api/src/jobs/scheduled-cost-sync.lambda.ts deleted file mode 100644 index 6068ec7..0000000 --- a/apps/api/src/jobs/scheduled-cost-sync.lambda.ts +++ /dev/null @@ -1,13 +0,0 @@ -import { runScheduledCostSync } from "./scheduled-cost-sync.js"; - -export const handler = async (): Promise<{ - statusCode: number; - body: string; -}> => { - const result = await runScheduledCostSync(); - - return { - statusCode: 200, - body: JSON.stringify(result), - }; -}; diff --git a/apps/api/src/test/scheduled-cost-sync.test.ts b/apps/api/src/test/scheduled-cost-sync.test.ts index 87b357b..ab8b60c 100644 --- a/apps/api/src/test/scheduled-cost-sync.test.ts +++ b/apps/api/src/test/scheduled-cost-sync.test.ts @@ -55,7 +55,7 @@ test("scheduled cost sync Lambda handler returns a 200 with the sync summary bod ensureScheduledRuntimeEnv(); const [{ handler }, { scheduledCostSyncDependencies }] = await Promise.all([ - import("../jobs/scheduled-cost-sync.lambda.js"), + import("../jobs/scheduled-cost-sync-handler.js"), import("../jobs/scheduled-cost-sync.js"), ]); @@ -89,7 +89,7 @@ test("scheduled cost sync Lambda handler surfaces failures", async () => { ensureScheduledRuntimeEnv(); const [{ handler }, { scheduledCostSyncDependencies }] = await Promise.all([ - import("../jobs/scheduled-cost-sync.lambda.js"), + import("../jobs/scheduled-cost-sync-handler.js"), import("../jobs/scheduled-cost-sync.js"), ]);