Commit Graph

82 Commits

Author SHA1 Message Date
Ruben Fiszel 31904be890 update current job to in progress 2022-07-31 22:47:07 +02:00
Ruben Fiszel d397e6d618 update current job to in progress 2022-07-31 22:41:41 +02:00
Ruben Fiszel c37b9f7106 do not serialize the whole object for job in progress update 2022-07-31 22:31:44 +02:00
Ruben Fiszel a368d2c6d4 order result from forloop bby args _index 2022-07-31 20:41:35 +02:00
Ruben Fiszel 03ed38e9b2 only check for schedule if not a flow step 2022-07-31 20:30:30 +02:00
Ruben Fiszel 7f55e7a498 report flow for whom the fetching error is happening 2022-07-31 20:23:03 +02:00
Ruben Fiszel 4df819554e report flow for whom the fetching error is happening 2022-07-31 19:53:19 +02:00
Ruben Fiszel abcd25dbff error for flow of length 0 2022-07-31 19:15:05 +02:00
Ruben Fiszel 2483072d81 improve error messages 2022-07-31 19:01:46 +02:00
Ruben Fiszel e82e5fff56 transferring copyright from ruben to windmill labs 2022-07-30 14:09:41 +02:00
Ruben Fiszel ae2aa7b8f8 more errors 2022-07-30 01:10:01 +02:00
sqwishy 9a632befdd job duration to ms & added to /api/w/*/users/list (#261)
* add jobs_duration to /api/w/*/users/list

A few improvements on this might be considered.

- Adding the duration to /whoami and /whois
- Optionally fetching duration conditional on a query parameter.
- Using the query parameter value to select how far back to look,
  `created_at > now() - $2 * '1 day'::interval`.

Subquery might not be optimal, but performance is a bit weird to test
right now as I haven't done much with my development database to get it
to resemble a typical (production) database.  And there aren't many
indexes currently either.

And I think my rust rustfmt doesn't run because unstable options in the
rustfmt.toml or something so the formatting might be a bit wonky.

* duration -> duration_ms for completed_job

sqlx reordered keys in sqlx-data.json so the diff is quite noisy. I'm
not sure if I did it wrong or if this tool is obnoxious that way.

* don't double count job duration in flows

* job_duration_ms to Usage duration_ms jobs flows

rustfmt got carried away sorry
2022-07-30 00:02:51 +02:00
Ruben Fiszel 8037e390db cargo fmt II 2022-07-29 21:35:50 +02:00
Ruben Fiszel d4b5a0ea3d cargo fmt 2022-07-29 21:29:59 +02:00
Ruben Fiszel fed1849256 protect against ill-defined state for flows restart 2022-07-29 21:14:56 +02:00
Ruben Fiszel b3e821e1b2 also handle the case where it's the input transform of the first flow job that fails 2022-07-29 20:48:39 +02:00
Ruben Fiszel 3e07ae2b55 fix: forloop flows unsoundness fix part I 2022-07-29 20:36:57 +02:00
Ruben Fiszel 771de0990a fix: update variable and resources now return error if nothing was updated 2022-07-29 11:07:59 +02:00
Ruben Fiszel a8d4b7d535 typescript parser now support ? syntax for args 2022-07-28 21:40:47 +02:00
Ruben Fiszel c3259ec262 fix: if :path is not a valid path, do not even attempt to fetch it 2022-07-28 12:59:14 +02:00
Ruben Fiszel 127bba6c9b bring back username, workspace_id in audit log 2022-07-28 09:50:00 +02:00
Ruben Fiszel 98c57e974b improve logging 2022-07-28 02:31:52 +02:00
Ruben Fiszel c5873ddc34 nit: make handle flow log a debug 2022-07-28 00:57:47 +02:00
Ruben Fiszel 4243a46d52 fix: get_variable refresh_token bug 2022-07-27 16:24:10 +02:00
Ruben Fiszel e92f5c0b63 fix: encrypt the refresh token 2022-07-27 15:39:39 +02:00
Ruben Fiszel 5636ecd276 fix: keep previous refresh token if no new ones were provided 2022-07-27 15:21:10 +02:00
Ruben Fiszel c95da3a29d feat: skip failures loop (#258)
* wip: forloop skip failures -- very first pass

* last iteration fix + barebone UI integration

Co-authored-by: sqwishy <somebody@froghat.ca>
2022-07-27 12:40:08 +02:00
Ruben Fiszel 07fac175a0 feat: add schedule settable from pull flows 2022-07-27 12:18:02 +02:00
Ruben Fiszel 7476021d2f fix: audit logs 2022-07-26 18:49:27 +02:00
Ruben Fiszel 022f39be01 fix(frontend): get refresh token for google services 2022-07-26 01:52:36 +02:00
Ruben Fiszel 7ded39b5ba fix(frontend): get refresh token for google services 2022-07-26 01:22:54 +02:00
Ruben Fiszel d447b0c130 fix(frontend): get refresh token for google services 2022-07-26 01:05:34 +02:00
Ruben Fiszel 4980be315c monaco-lsp downgrade + google-refresh fix + backend update 2022-07-25 22:53:08 +02:00
Ruben Fiszel faab4b7c42 feat: add google login v1 2022-07-25 21:15:46 +02:00
Ruben Fiszel 05ba0a06d0 feat: hub flows integration 2022-07-25 10:03:52 +02:00
Ruben Fiszel f402cc67c1 also allow editable flow 2022-07-24 11:27:36 +02:00
Ruben Fiszel 656e0acfc1 feat(backend): do not require visibility on job to see job if in possesion of uuid 2022-07-23 21:16:48 +02:00
Ruben Fiszel d4de9c982c feat: add delete schedule 2022-07-20 17:37:04 +02:00
Ruben Fiszel de160fba45 feat(backend): check of no path conflict between flow and flow's primary schedules 2022-07-20 14:43:08 +02:00
Ruben Fiszel 80ddfed361 fix(frontend): filter script by is_trigger and jobs by is_skipped + path fix 2022-07-19 20:23:58 +02:00
Ruben Fiszel 8360c03df8 fix: list with is_skipped + deno-client fix 2022-07-19 05:59:12 +02:00
Ruben Fiszel 9c50e023ec fix(backend): clear env variables before running script 2022-07-19 05:51:19 +02:00
Ruben Fiszel 10e9549ded fix: consistent exists/{resource} addition + usage in frontend 2022-07-18 17:21:34 +02:00
Ruben Fiszel 2b712e6ce5 feat: add run_wait_result to mimic lambda ability 2022-07-18 00:45:05 +02:00
Ruben Fiszel 36de76e8b3 fix: HubPicker pick from trigger scripts when relevant 2022-07-17 18:14:50 +02:00
Ruben Fiszel 738d429f2f feat: trigger scripts and have flows being triggered by checking new external events regularly (#200)
* v1 trigger scripts

* progress

* stop early condition

* backend execution model

* progress

* progress

* progress

* works but todo: collect result, render forloop, convert forloopraw to seq for frontend

* collect result

* v1

* that's enough

* sed
2022-07-17 13:17:45 +02:00
sqwishy b2808a1ab9 wrap array results from deno scripts in object (#204) 2022-07-15 19:11:56 +02:00
sqwishy 75ee922127 deno script args spread to array (#203)
smol issue where a deno script with parameters named `main` or `run`
will try to assign over imported main or the run function.

This uses the spread syntax to unpack the arguments and arrange them in
an array in argument order.  Instead of making assignments to the scope.
2022-07-14 21:30:31 +02:00
Ruben Fiszel d3cbe19c73 fix(backend): create resource would fail if is_oauth was not set 2022-07-14 19:48:14 +02:00
sqwishy 45827e82dc fix: write job arguments to file (#199)
Job arguments are serialized to JSON and then parsed by the Python/Deno
script.  The current code tries to escape the JSON and include it as a
string in either of those languages.  It doesn't quite work right and
there are some issues with escaping.  This writes the JSON string to a
file and loads the file from those scripts instead.
2022-07-14 18:42:29 +02:00