Commit Graph

48 Commits

Author SHA1 Message Date
Ruben Fiszel 551795f3fd sqlx offline fixes 2022-11-01 22:13:35 +01:00
Ruben Fiszel 463d73399d feat(backend): add parallel option for forloop and branchall (#840)
* parallel

* parallel

* fix 1

* fix 2

* fix 3

* fix 3

* fix 4

* sqlx

* add parallel toggle on frontend

* parallel in frontend

* serde

* fix everything

* fix everything
2022-11-01 06:09:00 +01:00
Ruben Fiszel fc61e9674e add flow_input to context of branch predicates and stop early 2022-10-30 18:24:23 +01:00
Ruben Fiszel 9a06c06cbd sqlx prepare 2022-10-30 17:08:03 +01:00
Ruben Fiszel 14fb4551f4 feat: payload capture of json to initialize flow input (#655)
* capture table and some endpoints for json pastebin

* only retain user's most recent captures

* merge conflict

* sqlx data

* fix migration

Co-authored-by: sqwishy <somebody@froghat.ca>
2022-10-25 00:54:53 +02:00
Ruben Fiszel 02f4113234 add resume_id to job_resume + add identity module 2022-10-24 14:48:28 +02:00
Ruben Fiszel 7a4bcd98f6 feat: add approver to approval step 2022-10-24 01:50:39 +02:00
Ruben Fiszel a9359dada7 fix: improve approval flow with approval page 2022-10-22 13:55:12 +02:00
Ruben Fiszel 960b701cf6 feat(backend): propagate cancel instantly to all flow jobs if any 2022-10-21 22:01:07 +02:00
Ruben Fiszel 8aa4c7691b fix(backend): reschedule flow at first step end (#746)
* fix(backend): reschedule flow at first step end

* fix

* fix

* fix

* fix

* sqlx prepare
2022-10-18 17:06:39 +02:00
Ruben Fiszel d1780c8c6b feat: add result by id to fetch result from any node (#769)
* feat: add result by id to fetch result from any node

* sqlx prepare

* fix

* fix

* review
2022-10-18 17:04:13 +02:00
Ruben Fiszel c82004de00 feat: secure suspended resume event + configurable timeout (#721)
* fix suspend count for early message + delete resume_job

* all

* done everything

* done everything
2022-10-11 22:55:14 +02:00
Ruben Fiszel 6ea76b5a61 fix suspend count for early message + delete resume_job 2022-10-10 20:17:49 +02:00
Ruben Fiszel b87b03a673 feat(backend): implement new OpenFlow module Branches (#692)
* branches

* iterate

* branches

* progress

* progress

* progress

* done

* adapt frontend

* adapt frontend

* sqlx
2022-10-09 23:12:05 +02:00
Ruben Fiszel 849842e9c6 feat: implement same_worker openflow attribute for running flow all in one go + sharing folder /shared (#689)
* init

* progress

* all

* sqlx

* remove unecessary test

* done

* frontend

* frontend
2022-10-06 04:59:09 +02:00
Ruben Fiszel dc57402be9 buildcache not on ghcr 2022-09-26 04:19:31 +02:00
Ruben Fiszel a4f31bbdd6 do not restart flow as zombie job 2022-09-26 00:45:26 +02:00
Ruben Fiszel 04ab59f928 refactor logs panel everywhere applicable (#625)
* init

* init

* progress

* progress

* refactor logs entirely

* fix sqlx
2022-09-25 18:03:51 +02:00
Ruben Fiszel 772195baed fix cancel job 2022-09-25 17:49:11 +02:00
Ruben Fiszel 4bdeb1b294 fix cancel job 2022-09-25 17:13:03 +02:00
sqwishy a4a583f4e3 feat(backend): flow suspend resume (#522)
Flow observes `suspend` setting and will wait for resume messages sent for the job before continuing to the next step in a flow.

Adds endpoints under workspaces at `/jobs/<cancel|resume>/<job-uuid>` to either cancel or resume the job with a payload. For POST requests to the endpoint, payload is a JSON document. For GET requests to the endpoints, the payload is a base64url encoded JSON document as the value of the payload query parameter.
2022-09-14 11:46:57 -07:00
Ruben Fiszel 66df58af47 feat: is_trigger is just a type tag, soon to include failure and command (#523)
* script kind

* all

* init code flow

* kind: trigger

* kind: trigger
2022-09-05 09:55:04 +02:00
Ruben Fiszel 84762df53b pass language to completed job 2022-08-25 14:55:38 +02:00
Ruben Fiszel e18f814d77 fix: restart zombie jobs was restarting all jobs 2022-08-21 12:19:31 +02:00
Ruben Fiszel f01991b7a4 fix(backend): clear_schedule only clear non running jobs 2022-08-20 19:14:16 +02:00
Ruben Fiszel feb49e9561 fix(backend): started_at info for completed_job is no more completed_at 2022-08-20 17:06:13 +02:00
Ruben Fiszel 091e4224fc sqlx offline 2022-08-20 15:21:15 +02:00
Ruben Fiszel d2f5505589 feat: private imports 2022-08-18 21:49:24 +02:00
sqwishy bc3c69c554 correct query param number in delete_token (#380) 2022-08-09 17:57:03 +02:00
Ruben Fiszel 373d8085a7 do rate limit based on as_permissioned_as 2022-08-07 14:04:17 +02:00
Ruben Fiszel 2483072d81 improve error messages 2022-07-31 19:01:46 +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 908d5c8336 sqlx prepare llib 2022-07-27 12:25:44 +02:00
Ruben Fiszel 2f3831c07e sqlx fix 2022-07-20 18:44:08 +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 bd1e099fd3 sqlx fix 2022-07-19 21:04:27 +02:00
Ruben Fiszel 8360c03df8 fix: list with is_skipped + deno-client fix 2022-07-19 05:59:12 +02:00
Ruben Fiszel 10e9549ded fix: consistent exists/{resource} addition + usage in frontend 2022-07-18 17:21:34 +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
Ruben Fiszel 670e55b34b feat: account part II, handle refresh tokens, clarify oauth UI (#196) 2022-07-13 10:35:08 +02:00
Ruben Fiszel 60d48708f6 feat: OAuth "Connect an App" (#155) 2022-07-02 21:04:41 +02:00
Ruben Fiszel ab7a09cb62 feat: internal state for script triggers mvp 2022-06-27 21:51:23 +02:00
Ruben Fiszel d7bd6d213e pass email to script hub fetching 2022-06-25 21:42:28 +02:00
Ruben Fiszel 430179fe58 sqlx fix 2022-06-24 19:32:38 +02:00
Ruben Fiszel dc9997ed86 fix: run scirpt 2022-05-18 22:50:56 +02:00
Ruben Fiszel 51a4cd359e feat: Typescript support for scripts (alpha)
* typescript support

* frontend

* type inference

* type inference

* v0 works

* v0 typescript

* v0 typescript

* deno-client v0

* deno-client v0

* build_deno

* rm autogenerated files

* test workflow

* test workflow

* test workflow

* test workflow

* test workflow

* test workflow

* test workflow

* test workflow

* test workflow

* test workflow

* test workflow

* test workflow

* test workflow

* test workflow

* test workflow

* test workflow

* test workflow

* test workflow

* on tags

* createResource

* createResource

* createResource2

* typescript support

* templates

* include version
2022-05-17 20:42:05 +02:00
Ruben Fiszel b229455b96 feat: superadmin settings 2022-05-08 17:03:13 +02:00
Ruben Fiszel 2e132878e4 first commit 2022-05-05 04:25:58 +02:00