windmill-labs / windmill

Open-source developer platform to power your entire infra and turn scripts into webhooks, workflows and UIs. Fastest workflow engine (13x vs Airflow). Open-source alternative to Retool and Temporal.
https://windmill.dev
Other
9.78k stars 453 forks source link

feat(worker): support workers to run natively on windows [WIP] #4446

Open alpetric opened 6 days ago

alpetric commented 6 days ago

The goal was to be able to build and run workers on windows without the need of docker or WSL.

As a first step the worker should support:

Trying to keep code changes to a minimum but includes some minor automatic rustfmt

Notes:


[!IMPORTANT] Add Windows support for workers by updating executors and environment configurations for compatibility.

  • Windows Support:
    • Add Windows-specific configurations in bash_executor.rs, bun_executor.rs, go_executor.rs, python_executor.rs, and rust_executor.rs.
    • Use cfg(windows) to conditionally compile Windows-specific code.
    • Set SystemRoot and other environment variables for Windows in executors.
  • Executors:
    • Modify handle_powershell_job() in bash_executor.rs to support Windows paths and environment.
    • Update handle_bun_job() in bun_executor.rs to handle Windows-specific paths and environment variables.
    • Adjust handle_python_job() in python_executor.rs for Windows compatibility.
    • Update handle_rust_job() in rust_executor.rs to set Windows-specific environment variables.
  • Miscellaneous:
    • Minor formatting changes and cleanup in various files.
    • Add SYSTEM_ROOT constant for Windows in worker.rs.
    • Introduce build_windows_worker.yml GitHub Actions workflow for building Windows workers.

This description was created by Ellipsis for 45dc9cdd6abe8bf8a0c857c84ac41fc427582604. It will automatically update as commits are pushed.

cloudflare-workers-and-pages[bot] commented 6 days ago

Deploying windmill with  Cloudflare Pages  Cloudflare Pages

Latest commit: 45dc9cd
Status: ✅  Deploy successful!
Preview URL: https://f6966c58.windmill.pages.dev
Branch Preview URL: https://alp-build-windows.windmill.pages.dev

View logs