diff --git a/backend/windmill-worker/src/bun_executor.rs b/backend/windmill-worker/src/bun_executor.rs index 15cb6d1d82..3729151497 100644 --- a/backend/windmill-worker/src/bun_executor.rs +++ b/backend/windmill-worker/src/bun_executor.rs @@ -483,7 +483,9 @@ async function run() {{ await fs.writeFile("result.json", res_json); process.exit(0); }} -run().catch(async (e) => {{ +try {{ + await run(); +}} catch(e) {{ let err = {{ message: e.message, name: e.name, stack: e.stack }}; let step_id = process.env.WM_FLOW_STEP_ID; if (step_id) {{ @@ -491,7 +493,7 @@ run().catch(async (e) => {{ }} await fs.writeFile("result.json", JSON.stringify(err)); process.exit(1); -}}); +}} "#, ); write_file(job_dir, "wrapper.ts", &wrapper_content).await?; @@ -707,7 +709,15 @@ plugin(p) .stderr(Stdio::piped()); bun_cmd }; - start_child_process(cmd, &*BUN_PATH).await? + start_child_process( + cmd, + if annotation.nodejs_mode { + &*NODE_PATH + } else { + &*BUN_PATH + }, + ) + .await? }; handle_child( diff --git a/backend/windmill-worker/src/deno_executor.rs b/backend/windmill-worker/src/deno_executor.rs index 0e46ccc089..3f72104567 100644 --- a/backend/windmill-worker/src/deno_executor.rs +++ b/backend/windmill-worker/src/deno_executor.rs @@ -223,7 +223,9 @@ async function run() {{ await Deno.writeTextFile("result.json", res_json); Deno.exit(0); }} -run().catch(async (e) => {{ +try {{ + await run(); +}} catch(e) {{ let err = {{ message: e.message, name: e.name, stack: e.stack }}; let step_id = Deno.env.get("WM_FLOW_STEP_ID"); if (step_id) {{ @@ -231,7 +233,7 @@ run().catch(async (e) => {{ }} await Deno.writeTextFile("result.json", JSON.stringify(err)); Deno.exit(1); -}}); +}} "#, ); write_file(job_dir, "wrapper.ts", &wrapper_content).await?;