Commit Graph

245 Commits

Author SHA1 Message Date
Ruben Fiszel
3ada264c4a fix: update to rust 1.86.0 2025-02-26 11:34:28 +01:00
Ruben Fiszel
692de3e628 update bun to 1.2.3 2025-02-23 23:11:07 +01:00
Ruben Fiszel
c81a13cdac bun to 1.2.2 while 1.2.3 is not released 2025-02-22 16:31:00 +01:00
Ruben Fiszel
b102ff4a46 fix: update deno 2.1.2->2.2.1 2025-02-22 09:25:47 +01:00
Ruben Fiszel
4e477d1f58 fix: update bun t.1.43->1.2.3 2025-02-22 09:23:33 +01:00
Ruben Fiszel
9ea6776ec1 initialize an uv venv globally but skip it for python executor 2025-02-22 01:53:14 +01:00
Ruben Fiszel
21ca694299 fix python venv 2025-02-22 01:44:45 +01:00
Ruben Fiszel
0aa6a39cad fix: app markdown is selectable in preview mode 2025-02-22 01:15:51 +01:00
Ruben Fiszel
85993ccac2 fix: add uv bin path to PATH 2025-02-22 00:50:06 +01:00
Ruben Fiszel
03903d06bf nit ansible 2025-02-21 11:22:58 +01:00
Ruben Fiszel
90ceb6e4fd uv tool install ansible 2025-02-21 09:50:57 +01:00
Ruben Fiszel
aace016c0c nits install 2025-02-21 09:26:25 +01:00
Ruben Fiszel
676b78b15d fix(image): use debian image instead of python image as base 2025-02-21 09:20:57 +01:00
Ruben Fiszel
312b852c6c do not install pip at all 2025-02-21 08:49:48 +01:00
Ruben Fiszel
f05878271b fix: do not pin python patch version in docker preinstalled python 2025-02-21 08:47:06 +01:00
Ruben Fiszel
5381c76b7d fix: update rust to 1.83.0 (#5135) 2025-01-25 14:24:59 +01:00
pyranota
e47dd697f9 feat(python): Multiple runtime versions (#4579)
* feat: Handle `pip install` by `uv`

Dirty and untested, but already something working

* Integrate with NSJAIL and prepare fallbacks

* Refactor fallback
no_uv disable compile and install
where no_uv_install and no_uv_compile are a bit more specific

* Remove `--disable-pip-version-check`
Reason:
   warning: pip's `--disable-pip-version-check` has no effect

* Fix backend compilation error

* Pip fallback overwrite UV's cache

* Initially refactor cache (No S3)

* Support S3

* Remove unused import

* Handle flags for NSJAIL

* Return deleted flag

* Remove verbose mode and enable link-mode=copy

* Granural migration of lockfiles

Before i realized we dont need it :)

* Initial draft (not-working)

* Add fallback

* Fix bug preventing uv from installing deps

'\n' - Love it

* Add verbosity indicator

* Iterate on feature
- Added instance python version
- Rework logic

* Fix EE build error
error[E0599]: no method named `iter` found for tuple `(PyVersion, std::vec::Vec<std::string::String>)` in the current scope

* Support S3

* Support NSJAIL

* Refactor `get_python`

* Make NSJAIL work [Unsafe]

config file missed /proc mount causing install phase to fail

* Trigger CI

* Clean up

* Make Actions build it

* Trigger CI #2

* Update Dockerfile and clean up

* Change fallbacks
now there is only no_uv and NOUV

* Expose INSTANCE_PYTHON_VERSION through env variable

* Change namings

* Include py-version to requirements.in

Also add comments and make code much cleaner

* Use const for python installation dir

It was hardcoded before

* Pin preinstalled version

* Update python_executor.rs

* Up to date branch

* Create PYCACHE dirs

TODO: PY_TAR_DIRS

* Fix after merge

* Make it safer

* Implement USE_SYSTEM_PYTHON

* Implement latest_stable option

* Load INSTANCE_PYTHON_VERSION on startup

* Check for multiple annotations used

* Fix Latest Stable button not pressed if selected

* Proper error handling for conflict on multiple annotations

* Fix merge conflicts

* Preinstall 3.11 and Latest Stable

* Preinstall latest stable in non-blocking manner

* Fix Warning

* Gate preinstall logic behind "python" feature

* Handle raw_deps properly

* Make it work with nsjail

* Revert docker-image.yml

* Revert Dockerfile

* Cleanup + Fixing

* Add windows support

---------

Co-authored-by: Ruben Fiszel <ruben@windmill.dev>
2025-01-24 11:42:48 +01:00
Ruben Fiszel
6776b2b162 pin cargo-chef 2025-01-24 00:21:54 +01:00
Ruben Fiszel
797f46c680 chore: update bun to 1.43.0 and loaded from tsx to ts 2025-01-16 18:26:03 +01:00
pyranota
91257e5e2f Bump uv version to 0.5.15 (#5030) 2025-01-09 11:54:28 +01:00
Alexander Petric
0a7268714c give option to run container as non-root windmill user (#4959)
* main docker file

* fix docker image build test tag

* don't remove tag

* make root user default

* chown tmp folder

* create search and logs folder in order to inherite windmill user permissions

* Dockerfile

* lsp non root

* improving lsp image to get rid of critical vulnerabilities

* formatting

* support /root/.cache mount

* make the cache mount backwards compatible
2025-01-03 16:51:31 +01:00
Ruben Fiszel
c4fdd2297e fix: update bun from 1.1.38 to 1.1.40 2024-12-19 01:38:35 +01:00
Ruben Fiszel
02a8f1f864 fix(internal): updating rust to 1.82 2024-12-18 12:01:36 +01:00
Ruben Fiszel
999e6ee94e revert docker build changes 2024-12-17 20:36:53 +01:00
Ruben Fiszel
cd4dfec61a ci improvements (#4938) 2024-12-17 20:01:11 +01:00
Ruben Fiszel
45d4fc2de7 bump deno to 2.1.2 and bun to 1.1.38 2024-12-06 01:24:36 +01:00
Ruben Fiszel
789b4f6442 bump deno to 2.0.4 and bun to 1.1.34 2024-11-06 00:38:37 +01:00
Ruben Fiszel
2cd46cc55f fix(bash): correctly propagate sigterm for cancelled bash scripts 2024-10-24 14:42:37 +02:00
Ruben Fiszel
1ae033841e fix: update bun to 1.1.32 (#4568)
* fix: update bun to 1.1.32

* Update DockerfileSlimEe

* Update Dockerfile
2024-10-22 20:08:26 +02:00
Ruben Fiszel
d7b83274db fix: update bun to 1.1.31 and deno to 2.0.2 2024-10-21 11:29:14 +02:00
Ruben Fiszel
eb83704965 chore: update bun to 1.30.0 2024-10-16 22:53:42 +02:00
Ruben Fiszel
ae6eac5f7b feat: upgrade to deno 2 2024-10-10 02:30:42 +02:00
Ruben Fiszel
7c0950d9da fix: fix uv path 2024-10-03 22:42:34 +02:00
pyranota
1e7a37ac8b feat: Replace pip-compile with uv (#4460)
* Update `shell.nix`

- Replace pip-compile with uv packages
- Pin rust version
- Add var to trigger windmill print more info in stdout

* Replace `pip-compile` with `uv` (dirty + untested)

* Fix arguments passed to uv

Some of the flags are included by default in UV and can be safely removed:
- --resolver=backtracking
- --no-emit-index-url

Also uv does not support `--pip-args` and suggests to directly pass args to uv.

* Remove extra `dbg!`

* Replace 'pip-compile' with 'uv' in Dockerfile

* Add fallback option to `pip-compile` (Disabled)

* Add `uv` to `docker/DockerfileSlim*`

* Add `get_annotation_python` and rename `get_annotation` to `get_annotation_ts`

* Add option to fallback to pip-compile

Put `# no_uv` on top the file for specific python script

Or set `USE_PIP_COMPILE` variable to `true`

* Put back `pip-tools` into shell.nix

* Make sure lockfile resolves again if `#no_uv` used

Add #no_uv to the end of requirements (requirements.in)
That way if something breaks for customer, then they put #no_uv and new lockfile will be resolved

* Put `pip install pip-tools` in original spot

* Fix compilation error

* Fix EE compilation error

error[E0658]: attributes on expressions are experimental
   --> windmill-worker/src/python_executor.rs:144:5
    |
144 |     #[cfg(feature = "enterprise")]
    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    |
    = note: see issue #15701 <https://github.com/rust-lang/rust/issues/15701> for more information

* Add `no_cache` annotation

Will force recalculation of lockfile
And block uv from using cached values

* Target uv cache to /tmp/windmill/cache

* Prohibit uv from managing python

* Add uv to DockerfileBackendTests

* Pin uv version to 0.4.18 in Dockerfiles

* Dont put `#no_uv` in requirements.in

Instead postfix hash for requirements.in with `-no_uv`

* Push Warning to logs if fallbacked to pip-compile

---------

Co-authored-by: Ruben Fiszel <ruben@windmill.dev>
2024-10-03 16:00:35 +02:00
Ruben Fiszel
768d4b752e fix: update pip to 24.2 and python 3.11.8->3.11.10 2024-09-23 14:01:31 +02:00
Ruben Fiszel
ae6103569a fix: update bun to 1.1.27 2024-09-17 10:27:51 +02:00
Ruben Fiszel
2a5bafecb8 update bun to 1.1.26 and deno to 1.46.3 2024-09-06 08:51:24 +02:00
superjcvd
76918b1ef3 chore: gives the possibility not to install git in the docker image (#4333)
* chore: create a variable for golang version

* chore: gives the possibility not to install git cli

* chore: update debian packages to latest security versions

* fix: remove apt-get upgrade feature

* Update Dockerfile

* Update Dockerfile

---------

Co-authored-by: @gael.soude <gael.soude@firstbase.com>
Co-authored-by: Ruben Fiszel <ruben@rubenfiszel.com>
2024-09-04 09:47:16 +02:00
Ruben Fiszel
85594825fc chore: only copy build folder of frontend for frontend build step 2024-09-01 22:45:43 +02:00
wendrul
91d328b132 feat: add rust (#4253)
* Add rust on frontend

* Add parser for rust

* Handle rust job execution

* Main has to return a result that is serializable

* Update parser: parse many rust types

* Rust parser dependencies

* Frontend wasm parser

* Add windmill parser rust to windmill parser wasm (temporarily)

* Add rust as a tag on worker__default

* Change init code for rust

* Cleanup rust_executor.rs

* Remove tree-sitter dep and fix unused imports

* Add lockfile and build logic

* Add cargo and rustup to windmill image

* Fix env var to work on docker image and dev env

* modify package.json

* Deps after parser publish

* Add stashed migration

* Unify rust versions

* Add error message when php or cargo are not present to use another image

* Error message conditionally on feature flag

* all ci/cd changes

* all ci/cd changes

---------

Co-authored-by: Ruben Fiszel <ruben@rubenfiszel.com>
2024-08-30 17:01:04 +02:00
Ruben Fiszel
ae7dfe778c update deno to 1.46.1 2024-08-28 21:13:29 +02:00
Ruben Fiszel
a22896e051 chmod /tmp/windmill directly in dockerfile 2024-08-27 11:55:44 +02:00
Ruben Fiszel
dc16c6180f update rust image to 1.80 2024-08-26 17:49:56 +02:00
Ruben Fiszel
7b1ea57924 fix: bun 1.1.21->1.1.25 2024-08-22 16:37:53 +02:00
HugoCasa
904b5b4ea1 feat: cache common hub scripts in image (#4249)
* feat: cache common hub scripts in image

* Delete backend/src/hubPaths.json

* fix: missing file

* fix: dockerfile

* fix: cache by path

* fix

* fix

* precreate cache folder
2024-08-16 17:30:44 +02:00
Ruben Fiszel
8c457960a5 dockerfile improvements 2024-08-14 15:49:33 +02:00
Fred Reimer
4b2aa1310d bump go version (#4192)
* bump go version

* update go version in lsp
2024-08-06 15:07:24 +02:00
Ruben Fiszel
c7832bfb0f update rust image to 1.79 2024-07-30 15:46:43 +02:00
Ruben Fiszel
64053cc9ca bump deno and deno_core to 1.45.4 2024-07-30 08:43:52 +02:00
Ruben Fiszel
8e2edaa435 fix: update bun to 1.1.21 2024-07-28 14:55:47 +02:00