1731 Commits

Author SHA1 Message Date
jasquat
2adfc7b1be
remove the publish button if backend is not configured to publish w/ burnettk (#473)
Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-09-07 16:03:47 -04:00
jasquat
99ec57c0b3
runtime_info can be None so check for it w/ burnettk 2023-09-07 15:11:06 -04:00
jasquat
c1642afd5e
Feature/user preference extension (#472)
* added ability to display navigation items in user profile toggle

* updated naming of some extension elements

* added user property table and updates for extensions to use it w/ burnettk

* moved extension ui interfaces to own file and linting issues

* some updates to render markdown results on load w/ burnettk

* added migration merge file w/ burnettk

* moved code to fix linting issues w/ burnettk

* resolved db migration conflict

* removed unnecessary migrations and added just one w/ burnettk

---------

Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-09-07 11:22:40 -07:00
Elizabeth Esswein
5a19b0a4ef
multiinstance ui (#469)
* multiinstance ui

* fix black

* added migration merge file

---------

Co-authored-by: burnettk <burnettk@users.noreply.github.com>
Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-09-07 14:00:09 -04:00
jasquat
ecba3f7c38
updated with tasks waiting for me query to include tasks manually assigned to the user w/ burnettk (#467)
Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-09-07 13:41:41 -04:00
jbirddog
2a1e7c8949
Allow cycle timers to cycle when a human task is in play (#465)
* Refactor to prep for manual task handling

* Fix for manual tasks that complete workflows with cycle timer events

* Getting bin_pyl to pass
2023-09-07 13:40:38 -04:00
jasquat
6dd2a505cd
Feature/view completed user forms (#464)
* added modal and table to view completed forms w/ burnettk

* avoid making api calls for tab components on instance show page w/ burnettk

* show id when no task name and fix cognitive complexity warning in an embarrassing way

* removed some commented out code

* made human task attributes optional and noted them in frontend interfaces w/ burnettk

* removed draft completed tasks component w/ burnettk

---------

Co-authored-by: jasquat <jasquat@users.noreply.github.com>
Co-authored-by: burnettk <burnettk@users.noreply.github.com>
2023-09-07 12:04:10 -04:00
jasquat
74e95389a1
Feature/avoid repredicting tasks (#460)
* removed commented out smart task prediction code from after_engine_steps and removed code to predict tasks again from within backend

* build images for this branch

* removed commented out debug code

---------

Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-09-07 11:50:38 -04:00
jasquat
53da96bf59
show an error message and render the remaining page if a bpmn diagram cannot load w/ burnettk (#458)
Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-09-07 11:20:58 -04:00
jasquat
aa285a86f3
Feature/group mapping from keycloak (#457)
* some basics to set a user groups based on info in keycloak w/ burnettk

* test for adding groups from token now passes

* do not remove users from groups when running refresh_permissions if specified

---------

Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-09-07 11:17:40 -04:00
jasquat
5658d9e764
when we replace variables in enum list in jsonschema ensure it is actually a non-empty list w/ burnettk (#455)
Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-09-07 11:13:27 -04:00
jasquat
1bf51827b7
updated the support user permissions to disallow authentications as well and updated webui to nav to auth page if auth is available but secrets are not w/ burnettk (#454)
Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-09-07 10:33:56 -04:00
jbirddog
730e3acd04
Support lazy loading call activities with human tasks (#450)
* Switch to local wheel

* Fix to load the call activity by spec

* Added log

* Logging

* WIP - getting the right tasks it seems from the db, need to get into the workflow

* Clean up, revert things

* Working thanks dan

* Getting bin_pyl to pass

* run_pyl.

* Re-poet install

* Revert file

* Remove logging lines

* Getting bin_pyl to pass

* Clean up, revert things

* Bump wheel

* Use version off pypi

---------

Co-authored-by: danfunk <daniel.h.funk@gmail.com>
2023-09-07 10:33:38 -04:00
jasquat
ecc2b12a33
Feature/guest form submission (#447)
* WIP: some initial code to allow anonymous users get a task w/ burnettk

* added scripts to get the url for a given human task w/ burnettk

* users can complete a task anonymously

* pyl

* fixed up login flow and added submission confirmation message for guest tasks w/ burnettk

* added only_guest_task_completion to guest token so we can remove items from the ui with it

* renamed anonymous to guest

* force logout guest users when verifying the token if certain criteria are met and do not do it random controller methods

* also allow saving draft data to use guest users w/ burnettk

* updated bpmn-js-spiffworkflow and added test to test allow guest

* pyl

* fix typo and remove bad file

* remove allow_guest column and moved allow guest check to TaskModel

* removed unnecessary comment

* missing import

* do not allow guest users to see completed tasks and remove save and close button for guest users w/ burnettk

---------

Co-authored-by: jasquat <jasquat@users.noreply.github.com>
Co-authored-by: burnettk <burnettk@users.noreply.github.com>
2023-09-07 10:33:02 -04:00
Dan Funk
18b95af369
Threads (#439)
* WIP - threading with dan

* WIP - cleanup with dan

* Fixing a minor bug and adding a comment and taking the win, even though it was all actually done by @jbirddog with help from @essweine

* adding a couple of simple tests

* * Threaded execution of multiple ready engine tasks is now the default behavior for all execution strategies by default (the skip-one strategry does not do it)
* Assure that tasks in the db match those in the spiffworkflow bpmn on save (remove all predicted and pruned tasks)

with @jbirddog, @jlantz, @burnettk

* run_pyl

---------

Co-authored-by: Jon Herron <jon.herron@yahoo.com>
Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-09-07 10:12:56 -04:00
jasquat
b66288b17f
Feature/business end states (#333)
* WIP: some updates to support new spiff w/ burnettk

* unit tests are passing

* all tests except message tests are passing

* fixed usage of catch message event w/ burnettk

* messages are working again w/ burnettk

* uncommented remaining message tests w/ burnettk

* fixed cypress tests w/ burnettk

* use main for spiffworkflow

* translated mysql last milestone query to sqlalchemy w/ burnettk

* fixed last milestone query so instances still return if no milestone found and moved some code from the main report method to own methods

* added some comments

* added last milestone column to process instances table

* display last milestone in instance list table w/ burnettk

* remove 3 characters when truncating last milestone for ellipsis

* make sure we have a current processor so we don't return null

* remove sleep

* The background processor now only picks up processes that were last updated more than a minute ago to avoid conflicting with the interstitial page.  With the understanding that we can rmeove this limitation when we can refactor to allow the backend processes to provide updates on what they are doing.

* pyl w/ burnettk

* cache last milestone on instances

* pyl

* added test for last milestone and added it to the proces instance show page w/ burnettk

* fixed broken test w/ burnettk

* fixed last milestone header

* removed duplicated column

* fixed broken test

---------

Co-authored-by: jasquat <jasquat@users.noreply.github.com>
Co-authored-by: Kevin Burnett <18027+burnettk@users.noreply.github.com>
Co-authored-by: danfunk <daniel.h.funk@gmail.com>
Co-authored-by: burnettk <burnettk@users.noreply.github.com>
2023-09-07 10:10:44 -04:00
burnettk
a4364c30a6
try to make invalid tokens easier to debug 2023-09-02 19:33:09 -04:00
burnettk
fbbcc46d00
cleanup and log SPIFFWORKFLOW_BACKEND_BPMN_SPEC_ABSOLUTE_DIR 2023-08-31 21:01:11 -04:00
burnettk
c2c2a2f07a
kill some duplication and just go ahead and get a process model repo if there is none 2023-08-31 20:52:09 -04:00
jasquat
893ef56f1a
feature/fix-run-scheduler-config (#456)
* updated scheduler config name to make sense and updated docker-compose file to use the local_docker env

* added sample command to boot server in docker

* removed terraform configs since they are no longer used

* fixed snyk issue

---------

Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-08-31 16:09:26 -04:00
Dan Funk
835afc0248
Feature/bug fixes for quick merge on mi ca (#462)
* upgrade to correct multi-instance error bug in BPMN-JS-Spiffworkflow

* update the git service to re-build cache after doing a git pull when a web-hook is called.

* update to SpiffWorkflow - which includes 'replace root with spec start'

* updating the lock file.
2023-08-31 21:10:03 +05:30
jasquat
41274176e1
updated restrictedpython for security 2023-08-31 11:03:17 -04:00
burnettk
91eeddc275
use a slightly safer time in migration script. w/ jlantz 2023-08-29 12:22:43 -04:00
burnettk
8ded75e103
improve error messaging for process model repo 2023-08-29 07:46:50 -04:00
Kevin Burnett
3b51b8e47e
handle when parent is none when getting last state change (#453)
Co-authored-by: burnettk <burnettk@users.noreply.github.com>
2023-08-25 17:53:33 +05:30
jasquat
5ba473e856
feature/fix-task-last-state-change (#452)
* added a migration function to fix tasks with null last state changes

* pyl

---------

Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-08-25 10:10:50 +05:30
jasquat
d29069df66
added permissions for authentication endpoints 2023-08-24 08:37:01 -04:00
jasquat
bf2197c72d
fixed run server locally so it defaults to sample 2023-08-23 12:27:35 -04:00
jasquat
8e65c21b21
update SpiffWorkflow to remove Root task specs and removed Root specific code from backend w/ burnettk (#444)
Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-08-22 08:55:09 +05:30
jasquat
8fc9253da6
Feature/add support permissions (#445)
* added support perm macro which removes secrets perms w/ burnettk

* support perm macro inherits from basic now and updated docs on permissions to be more accurate w/ burnettk

---------

Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-08-22 08:53:26 +05:30
jasquat
ef9baad917
added db migration that merges branching heads together 2023-08-21 13:24:50 -04:00
Kevin Burnett
f72958c72a
bump spiff to change task internal data, add new method and new exceptions (#441)
* bump spiff to change task internal data, add new method and new exceptions

* bump bpmn-js-spiffworkflow for MI updates

---------

Co-authored-by: burnettk <burnettk@users.noreply.github.com>
Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-08-21 22:23:02 +05:30
jasquat
2d8e262681
fixed is_empty metadata filter and added test to ensure they all work w/ burnettk (#437)
Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-08-21 22:00:01 +05:30
jasquat
a4af390118
Feature/allow markdown in extension results (#435)
* allow markdown in extensions results w/ burnettk

* fixed tests

* moved our rjsf form to component so extensions can also use it w/ burnettk

* added ability to create extensions that can download files w/ burnettk

* added test for extensions-get-data endpoint w/ burnettk

* make user optional when getting process instance reports

* added extensions-get-data to elevated perm macro and raise an error if user is not specified when needed when running a report

* fixed typeguard test

* push extensions branch

---------

Co-authored-by: jasquat <jasquat@users.noreply.github.com>
Co-authored-by: burnettk <burnettk@users.noreply.github.com>
2023-08-21 21:59:25 +05:30
jbirddog
e24c9a17a9
Oauth admin (#434)
* Adding dependencies

* Disconnect from /v1/auths for auth list. hardcoded for now.

* Revert changes

* WIP

* Getting hardcoded v2 auths into the frontend

* Better url for v2 oauth

* Pass the auth token from the frontend, don't verify token to start the auth process

* Manually verify the token from the querystring

* WIP

* WIP

* WIP, refactor SPIFF_SECRET handling, move dependencies

* Construct remote_app

* WIP

* WIP

* WIP

* WIP

* Ugly but getting the grant screen

* WIP

* WIP

* Github oauth ok

* Verify token, save access token

* Let secret name work with regex

* Getting bin_pyl to pass

* New component

* Load up the current config in an editor

* Getting bin_pyl to pass

* End point to update auth config

* Linting

* Adding configuration model

* Adding configuration model

* Prep to read config from db

* Read config from the db

* Save/reload poor man's styling

* Getting bin_pyl to pass

* Getting bin_pyl to pass

* Getting bin_pyl to pass

* Better handling of invalid json

* Getting bin_pyl to pass
2023-08-21 21:58:55 +05:30
jasquat
ca4984599a
created migration to incrase the human task file names to 255 in the db w/ burnettk (#429)
Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-08-21 21:58:10 +05:30
jasquat
f368d2788a
Feature/restrict call activity processes (#426)
* ensure users have access to run a process model in order to use it as a call activity w/ burnettk

* bad some cache dir w/ burnettk

* pyl

---------

Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-08-21 21:57:29 +05:30
jasquat
fa9a4e5d6d
Feature/event payload migration fix (#443)
* also update exclusive gateways when migrating to event payload spiffworkflow

* pyl w/ burnettk

* build docker image for this branch w/ burnettk

* check to make sure configs are not None w/ burnettk

* do not migrate tasks related to exclusive gateways w/ burnettk

---------

Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-08-17 22:13:29 +05:30
Dan Funk
ee265321de
Feature/onboarding ephemeral (#442)
* The onboarding controller should not save the process model to the database.  It creates a pile of pointless noise.  So just cleaning that up.

* run_pyl

* assure we can handle user tasks if they happen during on-boarding, while keeping the list of processes clean.
Lots of weird stuff getting run_pyl going.

* pyl

---------

Co-authored-by: burnettk <burnettk@users.noreply.github.com>
2023-08-16 12:11:38 -04:00
jasquat
9e9157f9cd
display correct status value when erroring from do_waiting w/ burnettk 2023-08-15 14:56:55 -04:00
jasquat
5d24e2bac1
add the process instance id to the error message when using system notifications on errors w/ burnettk 2023-08-15 10:29:03 -04:00
jasquat
e6bef0f9d0
remove debug file w/ burnettk 2023-08-11 14:18:29 -04:00
jasquat
679fb899bc
removed debug print statement w/ burnettk 2023-08-11 14:17:42 -04:00
Kevin Burnett
8d92d1ef4e
Feature/event payloads part 2 (#401)
* Revert "Revert "Feature/event payloads (#393)""

This reverts commit 9bc4a68f2d0679f0625f8e01bf9af15008833daa.

* Revert "Revert "poet not available in container""

This reverts commit 5c68e5817e72ee1aec6418c96f0afe115aee9f15.

* Revert "Revert "Run event payloads data migration from background processor (#399)""

This reverts commit b04284ac9c52a913ce32d8e76aee3495ac6e2dbf.

* Revert "Revert "using new spiff api to get info about events. w/ elizabeth""

This reverts commit f00e4b416cd978da979c510381f077dff9fe6c50.

* Revert "Revert "fix tests for waiting_event_can_be_skipped""

This reverts commit de2ea98daa2c0f75dd12246588601bd33b64617b.

* push image for preview env

* default scripts to localhost w/ burnettk

* use the bugfix/update-split-task-inputs spiffworkflow branch w/ burnettk

* removed debug json files

* use main for spiffworkflow

* do not attempt to highlight non-diagram boundary items w/ burnettk

* updated SpiffWorkflow to fix multiple signal event issue w/ burnettk

---------

Co-authored-by: burnettk <burnettk@users.noreply.github.com>
Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-08-10 18:24:49 +05:30
jasquat
ce370afcaf
removed coverage.xml file and ignore it in git in the future 2023-08-04 14:05:32 -04:00
jasquat
4c9eb2a8d5
fixed linting issues w/ burnettk 2023-08-03 15:38:02 -04:00
Dan Funk
26cedac42b
Minor tweaks t othe onboarding page. (#430)
* * Display the instructions_for_user directly on the home page (no redirects to alternate pages)
* Moved the onboarding view above the tabs on the home page.
* Added a "times_executed_by_user" script - not sure if we should keep it, but maybe handy.
* Assure that the display_name for the user is returned consistently (it was not being returned by the get_current_user function).

With @jbirddog

* remove pointless comment.
2023-08-03 15:08:25 -04:00
jasquat
4b771ac706
Feature/pin spiff in ci (#428)
* attempt to use the locked version of SpiffWorkflow in ci w/ burnettk

* fixed regex for spiffworkflow revision replacement

* make sure we also update the lockfile when getting new spiff

* install poetry before we attempt to update hte pyproject

* hardcoding spiffworkflow revision as a test w/ burnettk

* try running tests in ci from bash script w/ burnettk

* print working dir in ci w/ burnettk

* fixed location of instance dir w/ burnettk

* run with mysql in ci

* run typeguard with bash script as well w/ burnettk

* fixed postgres test w/ burnettk

* clean up github action file w/ burnettk

* fixed postgres test again w/ burnettk

* pyl

* attempt to remove nox from ci completely

* omit safety for now to test coverage

* fixed how coverage is being called from not nox

* allow running safety and macos again

* renamed run_not_nox to run_ci_session w/ burnettk

* attempt to only upload if matrix says to w/ burnettk

* attempt to install mysqlclient prereqs for mac and remove noxfile stuff w/ burnettk

* added back the constraints file w/ burnettk

* moved the contributing file to the root of arena w/ burnettk

---------

Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-08-03 11:49:30 -04:00
jasquat
a39a79c45b
Merge branch 'main' of github.com:sartography/spiff-arena 2023-08-02 11:05:59 -04:00
jasquat
93f7a7c437
updated python packages for ci w/ burnettk 2023-08-02 11:05:55 -04:00