1716 Commits

Author SHA1 Message Date
jasquat
9bb9ce47f8 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
f218805a2d try to make invalid tokens easier to debug 2023-09-02 19:33:09 -04:00
burnettk
0667436c15 cleanup and log SPIFFWORKFLOW_BACKEND_BPMN_SPEC_ABSOLUTE_DIR 2023-08-31 21:01:11 -04:00
burnettk
b60b620f16 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
d41b08e810 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
8c53432ee6 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
6094a63084 updated restrictedpython for security 2023-08-31 11:03:17 -04:00
burnettk
c063a4f84c use a slightly safer time in migration script. w/ jlantz 2023-08-29 12:22:43 -04:00
burnettk
8ea9b61ead improve error messaging for process model repo 2023-08-29 07:46:50 -04:00
Kevin Burnett
ad7a4cd1e9 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
8160d174bc 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
d58391e21d added permissions for authentication endpoints 2023-08-24 08:37:01 -04:00
jasquat
487ce87699 fixed run server locally so it defaults to sample 2023-08-23 12:27:35 -04:00
jasquat
de67f1ba72 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
29620cb17f 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
dc2d163785 added db migration that merges branching heads together 2023-08-21 13:24:50 -04:00
Kevin Burnett
68ac5868b7 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
dbabdf170b 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
17309fb7fd 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
2b363f4783 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
198f898f14 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
8ba5616ea8 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
ed9bdd42da 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
a0202c6a5b 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
314e5b660d display correct status value when erroring from do_waiting w/ burnettk 2023-08-15 14:56:55 -04:00
jasquat
f8038e5c3e 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
634f35d385 remove debug file w/ burnettk 2023-08-11 14:18:29 -04:00
jasquat
66e4c2718b removed debug print statement w/ burnettk 2023-08-11 14:17:42 -04:00
Kevin Burnett
9313a9f73a Feature/event payloads part 2 (#401)
* Revert "Revert "Feature/event payloads (#393)""

This reverts commit 95fafb7af118cbe81ca20600bbb83e54e0936a5a.

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

This reverts commit 140220498c284163dc02f8075fac949dff4de9e5.

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

This reverts commit 2afced3a51cda18491bc23b344bf2bada41393d5.

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

This reverts commit af857fee229fc89824e45a5d36ab0178e284ed44.

* Revert "Revert "fix tests for waiting_event_can_be_skipped""

This reverts commit 886e6bd42a94390bf4d863ec79bff0a3831f6fcf.

* 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
e62892f574 removed coverage.xml file and ignore it in git in the future 2023-08-04 14:05:32 -04:00
jasquat
48893cae13 fixed linting issues w/ burnettk 2023-08-03 15:38:02 -04:00
Dan Funk
b446aad184 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
3f6fb4d9f5 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
9c1eedee91 Merge branch 'main' of github.com:sartography/spiff-arena 2023-08-02 11:05:59 -04:00
jasquat
9fa6182bfb updated python packages for ci w/ burnettk 2023-08-02 11:05:55 -04:00
burnettk
f971a298f1 bump cryptography 2023-08-02 10:34:21 -04:00
jasquat
2198c0444f return an empty list if the extensions api is not enabled 2023-08-02 09:00:46 -04:00
jasquat
09794e9302 column names for tables in frontend should only have the first letter… (#425)
* column names for tables in frontend should only have the first letter of the first word capitalized

* forgot a couple field names w/ burnettk

---------

Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-08-02 14:06:19 +05:30
jasquat
1c84e5bb47 Feature/run error handler from dequeued (#424)
* run the error handler from the dequeued method instead of marking all failed process instances as error w/ burnettk

* do not commit some_cache_dir w/ burnettk

---------

Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-08-02 14:05:11 +05:30
jasquat
796dc9dbec Feature/extensions api (#423)
* added api and test to run a process model and return task data synchronously w/ burnettk

* added test to make sure we can access db models from extensions api w/ burnettk

* added extensions api to elevated permissions

* fixed permission tests

* do not add extensions permission to all permission for a pg or pm w/ burnettk

* added configs for extensions api w/ burnettk

* added the basis for an extensions list api w/ burnettk

* added tests for extenstions api and do not use serialized as a property

* allow giving a body to an extension when running and some support in frontend to use extensions

* added ability to display markdown and rjsf on extensions page

* added ability to submit the extension form and display the resulting task data

* made frontend extension urls have 2 pieces of information so we can specify multiple routes for the same process-model w/ burnettk

* do not save process instances when running extensions w/ burnettk

* add extension input to a task not the process w/ burnettk

* pyl w/ burnettk

---------

Co-authored-by: jasquat <jasquat@users.noreply.github.com>
Co-authored-by: burnettk <burnettk@users.noreply.github.com>
2023-08-02 14:02:53 +05:30
jasquat
8427f9d2fb Feature/metadata filtering (#418)
* added ability to filter metadata by is and contains w/ burnettk

* added the empty options for metadata filtering

* remove the filter when removing the corresponding column on the frontend

---------

Co-authored-by: jasquat <jasquat@users.noreply.github.com>
Co-authored-by: burnettk <burnettk@users.noreply.github.com>
2023-08-02 14:01:38 +05:30
jbirddog
7ccb0aec62 Don't schedule a cycle with 0 second duration (#417)
* Don't schedule a cycle with 0 second duration

* PR feedback

* Getting bin_pyl to pass
2023-08-02 14:00:00 +05:30
jasquat
299f4a6823 return the process instance when interstitial process is complete and… (#421)
* return the process instance when interstitial process is complete and favor redirecting to it on the frontend

* upgrade certifi for snyk check

---------

Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-07-28 20:34:39 +05:30
jasquat
865c89e80f display the potential task owners or group in the interstitial info message w/ burnettk (#415)
Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-07-27 22:30:32 +05:30
jasquat
51642ccd96 do not display instructions for end events at the top level of the process w/ burnettk (#414)
Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-07-27 21:13:53 +05:30
jasquat
cdaf2ea6c5 added a loading icon on task show page to avoid blank page when loadi… (#411)
* added a loading icon on task show page to avoid blank page when loading large datasets w/ burnettk

* fixed broken tests w/ burnettk

---------

Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-07-27 17:00:16 +05:30
jbirddog
43beb916a3 Basic scaffolding for onboarding (#400)
* Wedge between InProgressInstances for default view customization

* Rename to OnboardingView, stubbed out api in the backend

* Flip between InProgressInstances and MyTasks via the backend

* WIP

* WIP

* Basic human task handling

* FE lint

* Getting ./bin/pyl to pass

* Suppress any exceptions during onboarding request

* Script to skip onboarding if already started

* Getting ./bin/pyl to pass

* Better default location

* PR feedback

* PR feedback

* PR feedback - add new endpoint to basic permissions

* Fix basic permissions test

* Add integration tests

* Getting bin_pyl to pass
2023-07-27 11:54:30 +05:30
jasquat
148bf386e3 attempt to save again if deadlock given for draft data save w/ burnettk (#410)
Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-07-26 20:38:17 +05:30
jasquat
84369a1b20 return the process instance early from the interstitial if it is susp… (#407)
* return the process instance early from the interstitial if it is suspended or terminated

* added a test to make sure the interstitial page returns the process instance if suspended or termianted w/ burnettk

* randomize tests and cleaned up the pyproject file a little bit w/ burnettk

---------

Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-07-25 22:57:53 +05:30
Kevin Burnett
77f922f675 use a less wrong scheam for save-draft (#402)
Co-authored-by: burnettk <burnettk@users.noreply.github.com>
2023-07-25 22:54:48 +05:30