Commit Graph

240 Commits

Author SHA1 Message Date
Ruben Fiszel
8f2fd8984f remove env_id default value 2024-07-11 09:00:56 +02:00
HugoCasa
af3fd09d80 fix(backend): make value of flow_version not null (#4039)
* fix: flow versioning nit: make value of flow version not null

* fix: sqlx

* fix: missing code change

* fix: improve nit migration
2024-07-08 11:56:53 +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
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
3e7473b456 fix: job perms and job logs grants (#3914)
* fix: job perms grants

* fix: add job logs grants
2024-06-17 14:22:47 +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
26ad5fd5f3 fix: add database grants to oustanding_wait_time table 2024-06-13 14:29:33 +02:00
Ruben Fiszel
c8915063c4 feat: track dependency map for bun + inline script of flows 2024-06-08 16:43:48 +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
12d90790f6 fix: add audit log exception to schedules 2024-05-31 22:29:15 +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
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
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
Ruben Fiszel
bf5670ece7 Revert "fix(backend): remove email constraints from DB (#3739)" (#3743)
This reverts commit cdeee7ca0b.
2024-05-15 14:45:11 +02:00
HugoCasa
cdeee7ca0b fix(backend): remove email constraints from DB (#3739)
* fix(backend): allow underscore in email domain name

* fix: remove email constraint
2024-05-15 14:43:36 +02:00
HugoCasa
83f97eed56 fix: php worker tag migration (#3732) 2024-05-15 10:24:50 +02:00
HugoCasa
f7f7a6d85f feat: add php (#3725)
* feat: add php

* fix: nsjail + frontend build
2024-05-15 08:12:11 +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
1f64715043 feat: local typescript codebase as bundle (#3694)
* codebases

* codebases

* foo

* foo

* foo

* foo

* fix(frontend): Disable the insert button when required fields are empty strings (#3659)

* fix(frontend): use normal password mask for the sensitive fields of the resource editor

* handle super admins in password arg input

* chore(main): release 1.323.2 (#3660)

* chore(main): release 1.323.2

* Apply automatic changes

---------

Co-authored-by: rubenfiszel <rubenfiszel@users.noreply.github.com>

* foo

* all

* s3_helpers move

* progress

* all

* progress

* progress

* progress

* progress

* codebase final

* update without ee

* sqlx

* all

* all

* all

* all

* all

* all

* all

* all

* all

* all

* all

* all

* all

* all

* all

* update

* all

* all

* all

---------

Co-authored-by: Faton Ramadani <faton.ramadani14@gmail.com>
Co-authored-by: rubenfiszel <rubenfiszel@users.noreply.github.com>
2024-05-09 18:35:50 +02:00
Ruben Fiszel
c5de8365ec feat: support multiple labels for jobs (wm_label -> wm_labels) 2024-04-24 11:32:25 +02:00
Ruben Fiszel
ba4efb7b7e feat: add label and schedule filters to runs page 2024-04-23 22:48:21 +02:00
HugoCasa
9e36ae066c feat: hide scripts with on function main from operators + badge/filter for devs (#3584)
* feat: save in DB whether script has not main function

* fix: if cannot parse script args, clear schema

* feat: no main function badge and filter

* fix: sqlx

* fix: no main
2024-04-22 15:59:13 +02:00
Ruben Fiszel
c4711d38e0 fix: fix delete perms user folders 2024-04-16 19:53:30 +02:00
Ruben Fiszel
0a9e1326fe fix: tighten delete permissions 2024-04-16 10:41:14 +02:00
Ruben Fiszel
a1d2c59fce feat: flow concurrency limits support custom concurrency key 2024-04-09 22:03:39 +02:00
Ruben Fiszel
501e050be8 fix: allow for longer approver names in flows 2024-04-08 15:44:33 +02:00
HugoCasa
6efaa199b4 feat: slack team connected to multiple workspaces (#3500)
* feat: slack team connected to multiple workspaces

* chore: update ee ref
2024-04-03 17:47:23 +02:00
Ruben Fiszel
16996fba80 fix: fix audit issue with webhook triggered scripts 2024-03-31 14:52:06 +02:00
HugoCasa
e0b34edcc8 feat: add workspace free-tier usage (#3489)
* feat: separate workspace and user usage

* fix: sqlx build
2024-03-29 10:56:44 +01:00
HugoCasa
0e0d964fc8 feat: add visible to runner only default value (#3472) 2024-03-26 19:07:21 +01:00
HugoCasa
6b719fecea feat: add workspace environment vars (custom contextual vars) (#3455)
* feat: custom contextual variables

* chore: sqlx prepare

* fix: main merge
2024-03-23 11:40:55 +01:00
Ruben Fiszel
7714221f3e feat: large log disk and distributed storage compaction 2024-03-23 10:55:29 +01:00
Ruben Fiszel
6854728569 fix: disapproval does not trigger flow error handler anymore 2024-03-17 11:08:02 +01:00
Ruben Fiszel
958df4f62c feat: refactor logging to improve performance by order of magnitude for longer jobs 2024-03-16 17:55:34 +01:00
Ruben Fiszel
4ce1a19f65 fix: allow longer worker names 2024-03-15 15:33:47 +01:00
Ruben Fiszel
8909cfce19 add customizable template 2024-03-12 23:55:04 +01:00
HugoCasa
cedde04571 fix: remove admin instance username if setting disabled (#3398) 2024-03-12 14:25:01 +01:00
Ruben Fiszel
094c309ca1 Revert "fix: only set admin instance username when setting enabled (#3396)" (#3397)
This reverts commit 8748cd80d5.
2024-03-12 13:57:34 +01:00
HugoCasa
8748cd80d5 fix: only set admin instance username when setting enabled (#3396) 2024-03-12 13:55:19 +01:00
HugoCasa
cf4358a14b feat: instance usernames (#3382)
* feat: instance usernames

* fix: sqlx + ee ref

* feat: make one-off button for enabling

* chore: set ee ref

* fix: permissions and nits

* fix: admin instance username + sqlx build

* fix: revert stupid change

* fix: only create instance username when setting enabled

* chore: update to ee latest
2024-03-12 11:55:18 +01:00
Ruben Fiszel
f4fd7afbb3 fix: improve custom concurrency key handling 2024-03-06 15:53:01 +01:00
Ruben Fiszel
3c1e4b09a8 feat: implement progress monitor for parallel branches last transition 2024-02-28 08:49:35 +01:00
Ruben Fiszel
f1aa3cad2c set last_ping to null for current flows 2024-02-25 20:40:56 +01:00
Ruben Fiszel
efbba24581 feat: more resilient flows in case of crash during transitions 2024-02-25 18:25:40 +01:00
Ruben Fiszel
02951b4815 fix: improve completed_job index 2024-02-24 00:13:28 +01:00
Ruben Fiszel
75eaa4bd30 fix: improve scim handling of renames on azure 2024-02-22 14:35:40 +01:00
Ruben Fiszel
73ce177e8e fix: accept multiple dependency map importer for python 2024-02-20 23:28:42 +01:00
HugoCasa
4679d74370 feat: usage-based billing (#3247)
* feat: usage-based billing

* fix: missing field

* fix: sqlx build
2024-02-19 21:09:59 +01:00