Commit Graph

460 Commits

Author SHA1 Message Date
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
wendrul
af444c8b36 feat: Full-text search on runs using tantivy and command palette for quick actions (#4046)
* Add indexer crate and files

* POC searcher

incomplete schema
only indexes at startup

* POC search component frontend

* Demo of the frontend element

* add Results and Args as text

* minimal functionality

* Make jump to scripts by name

also flows and apps

* Add button on sidebar to open search

* Update lock on indexer after merge

* Make arrow key navigation compatible with scrol

* Show empty result screen and log as a coming feat

* Add summary to script searchable items

* Catch `parts is undefined` error (uFuzzy)

* Index refreshing using tokio interval

* Fix JobLoader workspace being wrongly defined

* Fix click outside

* Add debouncing for completed run search

* Binary mode working + job index tracker

* Warning for no license + fix height scrollbars on content search

* Make it compile without EE files

* remove panic to use errors

* Move global search

* Cleanup UI, no more tab switcher but clear placeholders and actions

* Add tantivy feature flag for windmill-api

* Rework indexer mode

* Mac compatibility for shortcut

* Update test for new run_server

* Prepare sqlx

* Mac compatibility

* Fix openapi yaml

* Fix frontend

* Frontend api fix

* Update docker-compose.yml and caddyfile

With the (by default deactivated) container and reverse proxy to use the
windmill indexer

* fix feature flag for tests

* fix feature falg for running tests

* fix feature flag for running tests

* Make content search use search modal instead

* Add tantivy feature to ee build steps

* Remove old Content search

* change volume location for indexer

* Update dependencies

* Prepare sqlx

* Uncomment line on docker compose

* Add line between input and results

* Update ee repo ref
2024-07-11 11:13:27 +02:00
HugoCasa
5e23cc26d0 fix: improve flow cancellation (#4013)
* fix: improve flow cancellation

* fix: sqlx

* fix: cancel shortcut when no parent and not running
2024-07-03 14:50:52 +02:00
HugoCasa
ae9607082b fix: remove useless metrics (#3962)
* fix: remove useless metrics

* fix: nit

* feat: update ee ref (renew key on start + vcpu usage)

---------

Co-authored-by: Ruben Fiszel <ruben@windmill.dev>
2024-06-26 15:28:09 +02:00
Ruben Fiszel
f41972d085 add timeout for cancel jobs (#3941) 2024-06-20 21:22:44 +02:00
Ruben Fiszel
7cdb58439f fix tests 2024-06-18 22:57:51 +02:00
Ruben Fiszel
60c63d7550 update datafusion 2024-06-18 22:13:02 +02:00
Ruben Fiszel
710a0933bd update datafusion 2024-06-18 20:51:59 +02:00
HugoCasa
93f58056a0 feat: replace ephemeral tokens by jwt (#3908)
* feat: replace ephemeral tokens by jwt

* fix: migration + sqlx

* fix: tests, agent, ee ref

* fix: sqlx

* fix: tests

* fix: jwt prefix change + fix tests

* fix: nit

* fix: handle agent mode
2024-06-14 13:07:35 +02:00
Ruben Fiszel
f740614c0b feat: accelerate bun through caches (#3909)
* all

* all

* all

* all

* all

* simplify extract
2024-06-13 19:09:16 +02:00
Ruben Fiszel
8671126d84 fix: use full hostname as worker ping hostname and add it in other contexts 2024-06-05 11:28:51 +02:00
Ruben Fiszel
e666f837cd fix: further restrict job api to logged in workspace users or anonymous jobs only" (#3860) 2024-06-03 15:13:15 +02:00
Ruben Fiszel
3cf818e283 feat: replace polars with datafusion for data preview 2024-05-29 23:38:36 +02:00
Ruben Fiszel
9c7bb778a1 jemalloc for all 2024-05-29 01:44:37 +02:00
HugoCasa
bba0091bff fix: worker metrics (#3837)
* fix: worker metrics

* chore: sqlx

* chore: update ee ref

* fix: remove jemalloc stats unwrap
2024-05-29 01:12:00 +02:00
Ruben Fiszel
6a332bc30f fix: make all error strings more verbose 2024-05-25 22:15:15 +02:00
HugoCasa
42c082702b feat: automatic key renewal (#3815)
* feat: automatic ee key renewal

* chore: sqlx

* chore: update ee repo ref

---------

Co-authored-by: Ruben Fiszel <ruben@windmill.dev>
2024-05-24 19:49:45 +02:00
Ruben Fiszel
9e7d5934e3 add more infos about hanging monitor last ping 2024-05-23 22:14:31 +02:00
HugoCasa
126459f972 feat: improve permissioned audit logs (#3799)
* fix: increase token label size in db

* Revert "Revert "feat:  improve premissioned audit logs (#3793)" (#3798)"

This reverts commit afae33f5f8.

* feat: add username to email function

* fix: nit

* fix: add docstring to global func
2024-05-23 17:23:50 +02:00
Ruben Fiszel
afae33f5f8 Revert "feat: improve premissioned audit logs (#3793)" (#3798)
This reverts commit 35f8eecf2d.
2024-05-23 11:12:51 +02:00
HugoCasa
35f8eecf2d feat: improve premissioned audit logs (#3793)
* feat:  improve premissioned audit logs

* chore: update ee ref

* fix: build

* fix: sqlx
2024-05-23 08:55:48 +02:00
HugoCasa
50acb84aff feat: improve user audit logs and stats (#3786)
* fix: improve user audit logs and stats

* chore: sqlx

* fix: no features build

* fix: sqlx

* fix: no features build

* chore: update ee ref
2024-05-22 16:51:04 +02:00
Ruben Fiszel
d21502d478 nit compile 2024-05-20 19:45:00 +02:00
Ruben Fiszel
f8bd664362 only enable profiling if env variable is present 2024-05-20 18:57:26 +02:00
Ruben Fiszel
31d69561cc allow dynamic heap profiling using jemalloc live prof_active 2024-05-20 18:44:03 +02:00
Ruben Fiszel
1d396fad92 jemalloc image 2024-05-16 21:38:17 +02:00
wendrul
60b036c1ae Add concurrency limits observability (#3586)
* Add concurrency_key table and field to payload

Add a new table custom_concurrency_key for storing concurrency keys on a
per job basis. Add the field to the job payload to populate the table on
creation of a new job.

* Rename to custom_concurrency_key

Be more explicit about the nature of the option variable by calling it
a more appropriate name.

* Delete concurrency_keys on delete_expire_items

* Propagate db errors up

* Add ref to EE changes

* update sqlx

* Add concurrency_key to tests

* Revert renaming of FlowValue field

FlowValue field concurrency_key must be named concurrency_key for
serialization purposes.

* Remove debug print statement

* Get concurrency_key from Job

Whether it is a Completed job or a queued one, add a ways to get the
associated concurrency key

* Add endpoint to get concurrency_key

* Add endpoint and button to get job concurrency_key

Add a line with a link on the FlowMetadata that goes to the
concurrency_groups page. add endpoint to get the concurrency_key of a
job

* Merge concurrency_key tables into one

migration + change all related querrys

* Add concurrency plot to the runs page

* Prepare sqlx

* Add concurrency Key filter on UI

* Prepare sqlx

* Prepare sqlx

* Fix filter and order query

The limit makes more sense if we cut the older rows, so order by
started_at

* Factor interpolation to reuse on concurrency key

Factor the arg interpolation logic into a function and finish the
processing of concurrency key before insertion

* Remove old concurrency key processing logic

* Second transaction with userdb

To send all concurrency intervals but revealing only uuids of accessible
jobs, make a second transaction with the userdb.

* Remove old second endpoint

the intervals endpoint now also gets the concurrencyt key information
for all jobs

* Show external jobs

* Put filters into a dropdown

Create a ToggleButtonMore and put elements into a dropdown

* Add toggle between two graphs

* Add filter functionality to concurrency graph

* Improve concurrency graph front

* Fix concurrency groups page

* Prepare sqlx

* Add ref to ee

* Change migration to create new table instead

Instead of renaming the custom_concurrency_key_ended atble, we create a
new table and we will delete custom_concurrency_key_ended in the future
when it is no longer linked to any jobs

* Do small UI improvements

* Fix range fusion by not filtering past jobs

Instead of filtering jobs in the backend on a startedAfter value, limit
the query to 1000 and query all possible towards the past to get a good
context for the graph in most sane situations

* Improve frontend UI
2024-05-15 20:15:14 +02:00
HugoCasa
cb4b2f60ff feat: worker metrics (#3697)
* feat: worker metrics

* fix: limit worker metrics to superadmin

* fix: limit worker metrics to superadmin + feat: queue metrics charts

* fix: improve graphs
2024-05-10 20:50:09 +02:00
Ruben Fiszel
055c15e855 fix: fix build 2024-05-10 01:24:46 +02:00
Ruben Fiszel
fd5dfde201 fix(cli): add excludes to the codebase conf 2024-05-09 18:52:38 +02:00
HugoCasa
cb132671d3 feat: critical error side channel (#3625)
* feat: critical error side channel

* feat: trigger workspace error handler or critical channel on schedule error handling failure

* fix: build

* feat: finish critical error side channel

* feat: channels instead of just emails + move to EE

* fix: remove superfluous func

* fix: nits + ee ref

* fix: open source build

* fix: nits

* chore: update ee ref
2024-05-02 20:21:23 +02:00
Ruben Fiszel
f1cd473253 fix: re-release nit 2024-05-02 01:10:41 +02:00
Ruben Fiszel
961c89f3ec fix: improve schedule editor UX 2024-05-02 00:42:50 +02:00