Commit Graph

338 Commits

Author SHA1 Message Date
HugoCasa
ecf4706784 feat: rehydrate instance settings/configs/users from CLI (#4035)
* feat: rehydrate instance settings/configs/users from CLI

* fix: nits

* feat: encryption key, saved instances, include all workspaces

* preshot client version

* Update deps.ts
2024-07-15 19:38:44 +02:00
Ruben Fiszel
7f2cbb40f6 feat: improve flow status viewer (show branch chosen + all iterations in for loop) (#4074)
* all

* all

* all

* all

* all
2024-07-13 18:53:24 +02:00
wendrul
0b2b280113 Add indexer case to avoid 0 max_database_connection (#4073) 2024-07-13 00:18:56 +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
Ruben Fiszel
2812792326 fix: memory optimization for flow with big args (#4019) 2024-07-04 10:08:42 +02:00
HugoCasa
2ecf44f44f fix(backend): switch job run to user db (#4017) 2024-07-03 21:51:59 +02:00
HugoCasa
7f2289d4d5 feat: flow versioning (#4009)
* feat: flow versioning

* fix: sqlx

* fix: update schedule test for flow versioning

* fix: with_deployment_msg + UI nits

* fix: nit

* fix: improve down migration

* patch: keep latest flow version in flow table for backward compat

* fix: app deployments in list view

* chore: update ee ref

* fix: merge

* fix: tests
2024-07-03 15:53:45 +02:00
Ruben Fiszel
6ddeb07270 fix: fix OIDC 2024-06-28 00:44:03 +02:00
HugoCasa
4885ac9f4a fix: hide draft only items in pickers and from ops (#3977)
* fix: hide draft only scripts to ops and in pickers/flow builder

* fix: default to hiding draft only scripts

* fix: hide script drafts from ops

* fix: generalize to hide draft only/no main func by default

* fix: archived openapi nit
2024-06-26 12:21:45 +02:00
HugoCasa
ec673ac6b4 feat: schedule pausing (#3976)
* feat: schedule pausing

* fix: improve UI
2024-06-25 23:39:34 +02:00
HugoCasa
6933f06f1c feat: add extra metadata to folders/resources/types + path prefix filtering for all + improve groups UI (#3936)
* feat: add extra metadata to folders/schedules/resources/types

* feat: add path prefix filter to api

* chore: updatee ref

* feat: improve groups UI

* fix: nit

* fix: nit
2024-06-22 01:29:23 +02:00
HugoCasa
e92d8655c4 feat: fallback to default hub if official script not found on private hub (#3951) 2024-06-22 01:29:08 +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
Ruben Fiszel
e08b9fbcf1 nit test fix 2024-06-18 09:28:03 +02:00
Ruben Fiszel
1e26af3b44 fix: add more debug logs around http client errors 2024-06-18 09:01:55 +02:00
Ruben Fiszel
f2f3333e2d fix: add more debug logs around http client errors 2024-06-18 08:54:55 +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
5cb2c9d1f7 feat(cli): add wmill flow generate-locks 2024-06-10 11:44:53 +02:00
HugoCasa
06ee9b5aae feat: customer portal link (#3868)
Co-authored-by: Ruben Fiszel <ruben@windmill.dev>
2024-06-04 23:55:54 +02:00
wendrul
62f889c9da feat: warn when jobs spent a long time waiting in queue (#3856)
* Store jobs that waited for too long

* Add warnings as badges for long waited jobs

* Separate into self_wait_time and aggregate

Change the UI accordingly

* Prepare sqlx

* Update backend/windmill-queue/src/jobs.rs

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

* Fix incorrect query

* Prepare sqlx

* Move insert to pull + UI fixes

Insert as soon as the job is pulled and therefore started.
Add a badge on the lfow timeline to show the self wait time

* Move to after the pull in the worker

Move the logic to after the pull in the worker in the case its not a
noop

* Remove weird line

* Remove unnecessary async

---------

Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com>
Co-authored-by: Ruben Fiszel <ruben@windmill.dev>
2024-06-03 16:05:15 +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
038e2e7b64 fix: simple subflow approval step triggering timeouts 2024-05-31 12:50:29 +02:00
Ruben Fiszel
0e7a25c0bd feat: support multiple object storage + parquet_csv + polars -> datafusion" (#3853)
* multiple storage

* all

* rm symlinks

* all

* all
2024-05-31 11:59:51 +02:00
Ruben Fiszel
554bdd4685 add renew license key for tests 2024-05-30 08:19:42 +02:00
Ruben Fiszel
8d9b709674 improve sort and search for parquet preview 2024-05-30 00:50:52 +02:00
Ruben Fiszel
f530f19e18 fix ee.rs 2024-05-29 23:51:38 +02:00
Ruben Fiszel
3cf818e283 feat: replace polars with datafusion for data preview 2024-05-29 23:38:36 +02:00
HugoCasa
79948d09bb fix: worker memory usage (#3845) 2024-05-29 18:16:41 +02:00
HugoCasa
ce5c52198a feat: display last key renewal attempt (#3839)
* feat: display last key renewal attempt

* feat: improve UI + add renew button + dev instance

* fix: nits

* chore: update ee ref

* fix: nit

* fix: tests
2024-05-29 16:28:00 +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
HugoCasa
5de79aace3 feat: worker vcpus/memory limits + mem usage (#3828) 2024-05-27 18:43:02 +02:00
Ruben Fiszel
3db4e3bab1 feat: allow user resources in apps with a toggle (#3821)
* all

* all

* all

* all

* all

* all

* all

* all

* all

* all

* nits

* nits
2024-05-27 07:51:49 +02:00
Ruben Fiszel
6a332bc30f fix: make all error strings more verbose 2024-05-25 22:15:15 +02:00
Ruben Fiszel
98cb72123a fix build 2024-05-25 11:47:47 +02:00
HugoCasa
92cf325c35 fix: use hub script language as tag instead of 'hub' (#3816)
* fix: use hub script language as tag instead of 'hub'

* fix: remove hub tag
2024-05-25 10:38:03 +02:00
Ruben Fiszel
3656579856 fix build 2024-05-25 09:54:02 +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
4f30b1fb82 feat: store failed_retries per module state and display failed retries in flow status viewer 2024-05-23 19:16:26 +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
92b884cd3a nit 2024-05-22 00:44:25 +02:00
Ruben Fiszel
29bf7d3bd0 fix: add allow http toggle to object store settings 2024-05-22 00:36:04 +02:00
Ruben Fiszel
fcfbf9504d use RawValue for Flow value and hub script schema 2024-05-20 10:45:52 +02:00
Ruben Fiszel
c1810d164b fix(backend): improve memory usage by making schema RawValue instead of serde_json::Value 2024-05-20 10:11:47 +02:00
Ruben Fiszel
c43d04b95d feat: reduce memory usage (#3768)
* all

* all

* optimize deserialize

* all

* all

* fix issue

* fix compile

* fix compile

* fix compile

* fix compile

* fix compile

* fix compile

* fix compile

* fix compile

* fix compile

* fix compile
2024-05-19 21:58:38 +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
f7f7a6d85f feat: add php (#3725)
* feat: add php

* fix: nsjail + frontend build
2024-05-15 08:12:11 +02:00
Ruben Fiszel
6b49f47c5c feat: nativets can use the wmill library + setClient not required anymore (#3714)
* all

* all

* all

* all
2024-05-13 08:26:03 +02:00
Ruben Fiszel
aae70ac6cb feat: logs can be downloaded directly from server/frontend if using shared volume 2024-05-12 04:16:04 +02:00
Ruben Fiszel
14c1555089 fix: improve status exit dedicated workers 2024-05-11 02:44:49 +02:00