diff --git a/backend/windmill-worker/src/common.rs b/backend/windmill-worker/src/common.rs index b40622612025d..c9898cd9646bc 100644 --- a/backend/windmill-worker/src/common.rs +++ b/backend/windmill-worker/src/common.rs @@ -860,9 +860,15 @@ pub async fn save_in_cache( } fn tentatively_improve_error(err: Error, executable: &str) -> Error { + #[cfg(unix)] + let err_msg = "No such file or directory (os error 2)"; + + #[cfg(windows)] + let err_msg = "program not found"; + if err .to_string() - .contains("No such file or directory (os error 2)") + .contains(&err_msg) { return Error::InternalErr(format!("Executable {executable} not found on worker")); } diff --git a/backend/windmill-worker/src/python_executor.rs b/backend/windmill-worker/src/python_executor.rs index 97ae820afc2ab..17feeff648143 100644 --- a/backend/windmill-worker/src/python_executor.rs +++ b/backend/windmill-worker/src/python_executor.rs @@ -320,7 +320,7 @@ pub async fn uv_pip_compile( .args(args) .stdout(Stdio::piped()) .stderr(Stdio::piped()); - let child_process = start_child_process(child_cmd, "/usr/local/bin/uv").await?; + let child_process = start_child_process(child_cmd, uv_cmd).await?; append_logs(&job_id, &w_id, logs, db).await; handle_child( job_id,