Commit Graph

492 Commits

Author SHA1 Message Date
wendrul
36ea8a21d6 feat: Add full-text search on windmill service logs (#4576)
* Add service_log indexer file (ee)

* Rename to completed_run

* rename to service_logs

* Update lib.rs

* Make indexing of logs and simple frontend

* Add common ee file

* Update lib.rs

* Make log search global to fix openapi unused path param

* Prepare sqlx

* Show last indexed also when no jobs are found

* Adapt feature flags to service logs indexer

* Update api and main

* Build service log search page

* scope query to the min and max time

* Migrate modal, bug fixes

* Remove unused import

* Make the service logs page take the full screen

* improve quick access menu to service_logs, fix date stuff, hide 0 matches

---------

Co-authored-by: Ruben Fiszel <ruben@windmill.dev>
2024-11-05 09:52:07 +01:00
Ruben Fiszel
cee0e9f615 fix(prometheus): improve queue_count when tags have no more jobs 2024-11-05 00:22:06 +01:00
wendrul
5035b218a0 Clarify message about indexer being EE-only (#4613) 2024-11-01 01:06:17 +01:00
HugoCasa
7fdb524fc6 improve key renewal (#4519)
* improve key renewal

* sqlx and fix

* fix build

* improve everything

* nits

* nits

* update ee ref

* nit
2024-10-29 09:26:45 +01:00
Ruben Fiszel
85de44cb93 feat: autoscaling v0 (#4593)
* all

* all

all

all

all

all

all

all

all

all

* all

* all

* nits

* nits
2024-10-28 00:47:19 +01:00
wendrul
98a64188f5 fix: Add indexer backup lock to fit the deployment model (#4531)
* Pass db to init_index

* Prepare sqlx

* Update ee repo ref
2024-10-16 14:36:12 +02:00
Ruben Fiszel
5c51d86b6a fix: update internal deno runtime to latest (deno 2.0) 2024-10-10 03:42:28 +02:00
Alexander Petric
585f55edd2 feat(monitoring): Critical Alerts for Jobs Waiting in Queue [enterprise] (#4491)
* adding the job queue monitor

* first draft of queue metrics ui

* fix svelte check complaints

* harmonizing naming

* adding concurrency_lock table

* updating ee repo ref

* Rename 20241008155800_alert_lock_table.up.sql to 20241008155800_concurrency_lock_table.up.sql

* Rename 20241008155800_alert_lock_table.down.sql to 20241008155800_concurrency_lock_table.down.sql

* updating ee.rs

* adding owner as optional column

* handling of ee/non-ee

* Update ee.rs with newline
2024-10-09 20:48:18 +02:00
Ruben Fiszel
c2c2a494bd fix: flow picker of flows + precache hub scripts as bundles 2024-10-03 20:48:26 +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
Alexander Petric
6eb7f8ce81 feat(worker): support workers to run natively on windows (#4446)
* minimal code change to get windmill worker on windows for bun and python + rustfmt

* adding support for powershell

* compiling error on unix

* rust linting comments

* comments hugo: PSModulePath

* comments ruben, refactor to simplify

* adding build workflow

* editing workflow

* editing workflow

* editing workflow

* editing workflow

* editing workflow

* skip migration env, ee fixes

* improvements powershell

* testing windows runner

* testing windows runner

* testing windows runner

* testing windows runner

* testing windows runner

* install postgres on runner

* install postgres on runner

* install postgres on runner

* install postgres on runner

* install postgres on runner

* install postgres on runner

* install postgres on runner

* install postgres on runner

* killing process tree in windows

* sqlx_offline

* install openssl for github windows runner

* used pre-installed openssl

* used pre-installed openssl

* build ee

* build ee

* build ee

* build ee

* adding commented out steps for artifact publishing

* build on tag matchinv v* pattern

* ren instead of mv on Windows

Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com>

* fix merging issue

* gate imports for windows

* fixing default cargo home path...

* fixing default cargo home path...

* comments ruben

* make pwsh default modules loading more robust on unix (#4448)

Co-authored-by: Ruben Fiszel <ruben@windmill.dev>

---------

Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com>
Co-authored-by: HugoCasa <hugo@casademont.ch>
Co-authored-by: Ruben Fiszel <ruben@windmill.dev>
2024-10-03 15:59:12 +02:00
Ruben Fiszel
ce339064a2 remove pg-embed 2024-10-03 13:27:37 +02:00
Ruben Fiszel
d0b24d07d2 deno_core is an optional feature flag (#4473)
* full

* all

* add deno_core as features

* all

* remove warnings

* all
2024-10-03 13:11:58 +02:00
HugoCasa
41ff40f777 send stats when renewing key if last >24h (#4430)
* feat: send stats when renewing key if last >24h

* nits

* fix: sqlx

* nit

* renewal reason

* stats reason

* update ee ref

* Update ee-repo-ref.txt

---------

Co-authored-by: Ruben Fiszel <ruben@windmill.dev>
2024-09-30 12:23:07 +02:00
Ruben Fiszel
f189aaad5a fix: improve suspend_first behavior and frequency 2024-09-28 15:46:50 +02:00
Ruben Fiszel
da969da96f improve benchmarking tools (#4450) 2024-09-27 10:48:04 +02:00
Ruben Fiszel
bd6ddc166b feat(cli): add queues, workers and worker-groups commands (#4439)
* all

* all

* all

* all

* all

* all

* all

* all

* all

* all

* all

* all

* all

* all
2024-09-26 11:27:37 +02:00
Ruben Fiszel
efbcb1ffdd fix: migrate smtp instance settings to global settings (#4416)
* all

* all

* all

* fix

* update ee private

* all
2024-09-21 01:42:15 +02:00
Ruben Fiszel
73d25c867c fix(bun): never pre-bundle BASE_URL env variable 2024-09-20 09:48:00 +02:00
HugoCasa
d3e8731be2 feat: failed key renewal alert + renew on start if no recent renewal (#4387)
* feat: failed key renewal alert + renew on start if no recent renewal

* Update ee-repo-ref.txt
2024-09-16 16:54:35 +02:00
Ruben Fiszel
d533a017a7 fix: improve first time setup experience 2024-09-15 21:02:36 +02:00
Ruben Fiszel
7d29651d3e fix: graceful worker exits for same worker jobs (#4371)
* all

* fix compile
2024-09-11 18:32:08 +02:00
Ruben Fiszel
458dcfe1e8 fix: handle better same_worker flow monitor 2024-09-11 01:29:40 +02:00
Ruben Fiszel
16e9f063f7 fix: bun scripts cached in docker image have their dependencies pre-loaded 2024-09-09 13:52:12 +02:00
Ruben Fiszel
5817efc16f fix(cli): guide users to migrate to node version of the CLI 2024-09-07 21:27:36 +02:00
Ruben Fiszel
c8320c9720 nit test 2024-09-01 22:19:58 +02:00
Ruben Fiszel
c429e09211 nits zombie job log improvement 2024-09-01 10:36:53 +02:00
Ruben Fiszel
c93ccb6f55 improve service logs with json_fmt 2024-08-31 23:04:12 +02:00
Ruben Fiszel
c62e152d27 feat: service logs (#4244) 2024-08-31 14:57:35 +02:00
HugoCasa
c3ce68066c feat: min workers in worker group alert + zombie job critical alert (#4307)
* feat: min workers in worker group alert + zombie job critical alert

* updatee ee ref
2024-08-30 17:25:53 +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
e1223a6f24 fix: cache hub scripts in more cases + pre-cache hub scripts deps in deno 2024-08-27 02:30:54 +02:00
Ruben Fiszel
f15e18ed50 version diff editor takes screen height 2024-08-20 12:43:35 +02:00
Ruben Fiszel
fa06d20380 fix: add FORCE_WORKER_TAGS & fix workers page when default worker group is missing 2024-08-20 12:15:23 +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
7235aa5d65 fix: improve password field lifetime incorrectly recycled too early 2024-08-16 17:28:10 +02:00
HugoCasa
80a41669b2 feat: email triggers (#4163)
* feat: email triggers v0

* update docker compose to nginx with tcp reverse proxy + move smtp to private

* fix: open source build

* test: update ee ref for testing

* feat: use caddy with layer4

* fix: nit

* feat: configurable email domain

* fix: nit

* fix: nit

* fix: get l4 from main

* fix: default email domain to mail.domain

* update ee ref
2024-08-06 16:17:33 +02:00
Ruben Fiszel
69e400563c feat: variables created by password fields expire after 7 days 2024-08-01 16:05:03 +02:00
Ruben Fiszel
553c95d71b improve queue indices 2024-07-31 23:44:40 +02:00
Ruben Fiszel
4cc65b032a fix: make SLEEP_QUEUE adaptative to number of subworkers 2024-07-30 17:57:14 +02:00
Ruben Fiszel
99981a5874 reload servers on metrics setting change 2024-07-27 07:57:49 +02:00
Ruben Fiszel
e5519aa52a feat: add FORCE_<env> to allow to override db settings 2024-07-26 21:47:06 +02:00
Ruben Fiszel
eedc39c100 feat: pre-bundle bun scripts (#4132) 2024-07-26 19:00:30 +02:00
Ruben Fiszel
caecbde99a better split tantivy 2024-07-24 08:15:14 +02:00
wendrul
200e22c026 feat: job search index backed up and loaded from s3 (#4100)
* Add fn to get logs from disk and store as string

* Update dependencies

* Add async

* Update dependecies

* Add missing async

* Move JOB_RETENTION_SECS to windmill_common

* Update ee repo ref
2024-07-23 19:35:29 +02:00
HugoCasa
609e5d00eb feat: apply workspace specific tags only to some workspaces (#4107) 2024-07-23 19:12:11 +02:00
wendrul
8e640a2509 fix: make indexer opt-in when in standalone mode (#4076)
* Add standalone mode without indexer

* Imporve flag logic
2024-07-15 16:00:42 +02:00
Ruben Fiszel
c60e750985 fix indexer port 2024-07-14 10:04:16 +02:00
wendrul
0b2b280113 Add indexer case to avoid 0 max_database_connection (#4073) 2024-07-13 00:18:56 +02:00
wendrul
c8acc3d1c3 Make indexer mode not spawn the server specific behaviour (#4072)
* Make indexer mode not spawn the server specific behaviour

* Add ee repo ref
2024-07-12 20:36:53 +02:00