Commit Graph

148 Commits

Author SHA1 Message Date
burnettk f524b78368 fixes from fixit 2 2023-11-20 11:04:33 -05:00
jasquat fc503ec76b feature/secrets-encryption-cleaning (#673)
* removed simple-crypt and cleaned up usage of keys for encryption w/ burnettk

* renamed var to SPIFFWORKFLOW_BACKEND_ENCRYPTION_KEY w/ burnettk

* pyl w/ burnettk

---------

Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-11-16 10:12:47 -05:00
jasquat a025aaa017 upgraded cryptography to satisfy snyk and added ignore for werkzeug issue since we cannot do anything about it now w/ burnettk 2023-10-26 11:28:37 -04:00
jasquat 2f9aa12906 Feature/error boundary (#552)
* WIP for error boundary support w/ burnettk

* updates to catch error boundary events and send them back out w/ burnettk

* fixed broken test w/ burnettk

* use connector-http and spiffworkflow-proxy from main w/ burnettk

* updated smtp and slack connectors in connector-proxy-demo w/ burnettk

* added more tests for the service task service call connector to test errors w/ burnettk

* added spiffworkflow-connector-command and some code clean up

* updated the connectors in the proxy demo

* use SpiffWorkflow from git instead of locally

* some cleanup while code reviewing

---------

Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-10-18 14:00:12 -04:00
jasquat cba4a19d3b Feature/remove group service (#529)
* removed group service in favor of user service and messing around with ruff and pre-commeit w/ burnettk

* pyl can succeed now w/ burnettk

* removed debug code w/ burnettk

* pyl

---------

Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-10-05 13:27:38 -04:00
jasquat a84750741e updated SpiffWorkflow for depth fix (#519)
Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-09-28 12:51:48 -07:00
jasquat 47f94dccbb Feature/nonetype debug stuff (#513)
* some debug items w/ burnettk

* removed some db commits from workflow execution service so the passed in save is the only thing that actually commits the transaction

* set max depth to 50000 for now w/ burnettk

* pyl w/ burnettk

* use temp maxdepth fix in SpiffWorkflow w/ burnettk

---------

Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-09-27 17:04:47 -04:00
jbirddog 9925105a5e 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
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 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 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
jasquat c936c02db0 use mysqlclient instead of mysql-connect w/ burnettk (#358)
* use mysqlclient instead of mysql-connect w/ burnettk

* updated some comments w/ burnettk

* runs tests in parallel in run_pyl

---------

Co-authored-by: jasquat <jasquat@users.noreply.github.com>
Co-authored-by: burnettk <burnettk@users.noreply.github.com>
2023-07-12 19:44:49 +05:30
jasquat e4bf22f5cf Feature/interstitial summary part 3 (#367)
* throw an error if backend gives a 500 from interstitial page w/ burnettk

* turn unexpected errors for the interstitial page into event stream responses to avoid error misdirection

* pyl

* raise the api_error from the original and make the render_data method private

* Feature/interstitial summary (#337)

* * Process instance logs and messages are now components rather than pages, and are included within tabs on the process instance page, along with the diagram.
* Removed the Zoom and Move modules when showing the readonly
  Diagram.  Assured this readonly view is resized to fit the space when possible.
* Checkbox Widget no longer displays a duplicate label.
* CSS Tweaks
  * All pages are limited to a max display width of 1440, with auto margins to center the main content on the page.
  * "Show" pages, like ProcessInstanceShow, TaskShow have the primary content limited to 1000, also with auto-margins.
  * Paragraphs, headings, blockquotes, list items are limited to a width of 640.
  * Reduced margin bottom on all breadcrumbs.
  * Slightly reduced the width and margin of tiles
  * ordered lists and unordered lists show numbers and bullets now.
* End user Instructions component can, optionally, auto-collapse, so that only a portion is displayed, along with a toggle.  This is how it is set up for the ProcessInstanceShow page.
* Greatly reduced the lag in the interstitial page when doing a re-direct.

* run_pyl

* kill console

* wait for permissionsLoaded too since we are using ability.can

* Previous change removed the top level Messages page - this re-adds it.

* I am always, ALWAYS shocked at how I can not wrap my head around when and where to use "useEffect".

This should cause the show/hide Instructions toggle to only show when useful.

* Minor cleanup on the process instance properties display.

* linting

---------

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

* Fix a linting error.

* minor permissions related fixes for the new ui.

* Revert "Revert "Feature/better subworkflow management (#331)""

This reverts commit 48dcde8faf.

* do not execute tasks from the process instance show page w/ burnettk

* pyl w/ burnettk

* Very minor UI tweak to resolve a number of issues mentioned in SPIFF-316 Notion Ticket:

* Markdown links now open in a new window
* Tables on the home pages are now contained within Grids to better align them with the other content that is in a grid.
* Right aligned the "process instance list link" button to it is flush right with the table underneath
* Gave a little more breathing room the content on the info/metadata in the process instance view .

* updated docker image build action to contain the appropriate version info w/ burnettk

* properly resize to the available columns depending on s/m/l

---------

Co-authored-by: jasquat <jasquat@users.noreply.github.com>
Co-authored-by: Dan Funk <daniel.h.funk@gmail.com>
Co-authored-by: burnettk <burnettk@users.noreply.github.com>
2023-07-03 10:54:54 +05:30
Kevin Burnett b13b716424 parallel tests with xdist (#335)
* parallel tests with xdist

* add pytest-xdist as dev dep

* put back spiff

* update messaging

* get more in line with main

---------

Co-authored-by: burnettk <burnettk@users.noreply.github.com>
Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-06-26 22:37:41 +05:30
Kevin Burnett 7de0d97303 Feature/better subworkflow management part 2 (#341)
* Revert "Revert "Feature/better subworkflow management (#331)""

This reverts commit 48dcde8faf.

* updated SpiffWorkflow to fix infinite loop in task trace w/ burnettk

---------

Co-authored-by: burnettk <burnettk@users.noreply.github.com>
Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-06-20 10:37:49 -04:00
burnettk 48dcde8faf Revert "Feature/better subworkflow management (#331)"
This reverts commit 23af5cbbe4.
2023-06-15 15:10:48 -04:00
jasquat 23af5cbbe4 Feature/better subworkflow management (#331)
* 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

---------

Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-06-15 10:31:42 -04:00
Kevin Burnett 35543cc362 add mccabe linter and auto fixes (#302)
Co-authored-by: burnettk <burnettk@users.noreply.github.com>
2023-06-08 14:26:33 -07:00
jbirddog 122d1efbda Bump flask for safety (#304)
* Bump flask for safety

* let snyk check flask again w/ burnettk

* attempt to use the same revision for front w/ burnettk

---------

Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-06-06 17:33:48 -07:00
jasquat 5dfd96ca9e upgrade cryptography for security w/ burnettk 2023-06-02 12:09:24 -04:00
burnettk 397d99b5c0 enable flake8-bandit, cut off all http requests at 15 seconds to avoid hanging process, ignore xml lib spiff uses 2023-05-30 19:53:26 -04:00
burnettk aae043e0a4 add pylint 2023-05-30 19:39:15 -04:00
burnettk a567b990e6 enable pep8-naming and use ruff for autofixer 2023-05-30 07:15:49 -04:00
burnettk 6bbabd15f4 instead of actually adding pyright configs that do not work, document 2023-05-29 11:52:35 -04:00
burnettk 4b21f02355 get rid of some pyright diagnostics 2023-05-27 22:33:53 -04:00
burnettk 6a328cdb43 actually stop running tests against 3.9 2023-05-27 18:34:04 -04:00
burnettk be9859752e drop python 3.9 and remove unused libs 2023-05-27 18:17:51 -04:00
burnettk f8d4a6382b get compatible with ruff pyupgrade 2023-05-27 14:59:52 -04:00
burnettk 2b2875cb6f let ruff sort imports and ditch duplicative pre-commit linters 2023-05-26 20:01:08 -04:00
burnettk cf40546a09 get compatible with default ruff ruleset 2023-05-26 13:07:18 -04:00
burnettk 8d20ef6956 remove sphinx from pyproject since we do not use it in this way 2023-05-18 18:42:40 -04:00
danfunk 2bdf4e1cfc Remove incorrectly added myst-parser from backend. 2023-05-18 16:30:38 -04:00
danfunk 670a1d5363 initial set of docs for SpiffWorkflow 2023-05-18 10:49:44 -04:00
jasquat de8a718a30 removed flask-bpmn from pyproject since it is no longer used w/ burnettk 2023-05-10 17:09:51 -04:00
danfunk cc55f4413b run_pyl
use latest spiffworkflow in main
2023-05-10 15:42:07 -04:00
danfunk 4354efe536 minor fix to spiffworkflow backend. 2023-05-10 14:51:13 -04:00
danfunk b9a8b97fda Various updates to get the reset working correctly. 2023-05-10 10:49:39 -04:00
Dan 30a26de38d wip 2023-05-09 15:02:05 -04:00
jbirddog b89527ab80 Integrate spiff-element-units 0.3.0 for (some) lazy call activities (#239) 2023-05-04 14:15:13 -04:00
jasquat 418ec7d9c9 updated typeguard and fixed issues w/ burnettk 2023-05-01 15:26:29 -04:00
jbirddog 1dd445de68 spiff-element-units integration (#214) 2023-04-17 14:49:38 -04:00
jasquat 106b03d32b merged in main and resolved conflicts w/ burnettk 2023-04-07 14:59:49 -04:00
jasquat e12db76038 some cleanup, updated SpiffWorkflow, and added some notes to pick back up where we left off with the more efficient method w/ burnettk 2023-04-06 10:57:52 -04:00
jasquat c5b85fd404 WIP - test is still passing, no longer processing all tasks w/ burnettk 2023-04-05 16:07:35 -04:00
jasquat a7521cba65 run snyk on backend and added marshmallow dep to remove warning w/ burnettk 2023-03-28 16:55:13 -04:00
jasquat 98a935e222 use session delete branch of sqlalchemy stubs w/ burnettk 2023-03-28 16:28:41 -04:00
jasquat a878790393 add back in sqlalchemy stubs w/ burnettk 2023-03-28 16:05:43 -04:00
jasquat e7fef5b6c4 updated sqlalchemy to 2.0 due to safety complaints w/ burnettk 2023-03-28 15:56:00 -04:00
burnettk 16b837daca downgrade setuptools closer to where it was to avoid deprecation warnings 2023-03-28 14:58:16 -04:00
burnettk 3371148d4a fix four of five safety issues 2023-03-28 14:51:08 -04:00
burnettk 152be789ec another take on metrics 2023-03-22 22:40:56 -04:00
burnettk c4acbab343 fix all deprecation warnings 2023-03-16 22:42:35 -04:00
jasquat 80d9fa8ad6 merged in save_to_task_data branch and pyl with some cleanup w/ burnettk 2023-03-16 12:50:52 -04:00
jasquat e3513073e9 some more test stuff w/ burnettk 2023-03-16 10:29:15 -04:00
jasquat e8e4eab44b use main branch of spiffworkflow w/ burnettk 2023-03-15 16:15:15 -04:00
burnettk c591dbfefe no op cipher for testing 2023-03-12 18:20:29 -04:00
jasquat 2ef0bf0065 added loop to task test bpmn file w/ burnettk 2023-03-10 17:15:27 -05:00
Jon Herron f994c2f5d1 Poetry install 2023-03-06 15:43:46 -05:00
jbirddog 7c0b7d252e Couple dependency changes (#165) 2023-03-06 10:12:54 -05:00
jasquat 716986a483 prefer the bpmn process name over the identifier on the logs list page w/ burnettk 2023-03-01 16:28:42 -05:00
Dan 43e41fe848 Point to the latest spiffworkflow 2023-02-27 14:40:47 -05:00
Dan f16150b02b Merging main 2023-02-27 14:17:10 -05:00
Jon Herron a766e7d9a6 poetry remove orjson 2023-02-27 09:35:51 -05:00
Dan 2a800e844f * Re-work message tests so I could wrap my simple head around what was happening - just needed an example that made sense to me.
* Clear out complex get_message_instance_receive how that many-to-many works.
* Create decent error messages when correlations fail
* Move correlation checks into the MessageInstance class
* The APIError could bomb out ugly if it hit a workflow exception with not Task Spec.
2023-02-18 13:09:58 -05:00
jasquat 297d0ddb79 removed old pin to spiffworkflow w/ burnettk 2023-01-27 13:21:39 -05:00
jasquat 54f795da7b some initial updates w/ burnettk 2023-01-27 12:51:19 -05:00
jasquat 13b442f7f8 Merge remote-tracking branch 'origin/main' into feature/jinja_errors 2023-01-25 17:30:55 -05:00
jasquat cc85146678 upgraded bandit and flake8 w/ burnettk 2023-01-25 15:44:53 -05:00
Dan a38ecc2e60 Merge remote-tracking branch 'origin/main' into feature/jinja_errors 2023-01-25 15:38:52 -05:00
Dan 40682d0592 Added useMemo to error context
No longer clear errors in the task bar, as that will constantly remove them as soon as they are shown.
2023-01-25 15:09:05 -05:00
jasquat 2d57c3d45f strip off newlines and spaces when importing secrets and pinning spiffworkflow to working version until we can debug issues with new one w/ burnettk 2023-01-23 17:18:47 -05:00
Dan 8496b722fd Merges 2023-01-19 13:26:13 -05:00
jasquat dd8427bd32 pin SpiffWorkflow to passing version for CI tests w/ burnettk 2023-01-19 11:10:36 -05:00
Dan 28a28e353b Removing dependency on flask-bpmn and taking it out of SpiffArena
Slightly updating the APIError code for recent updates to SpiffWorkflow's error refactoring.
2023-01-17 12:56:06 -05:00
jasquat 7194864e6d do not write to logs when a task is inheriting data from the parent w/ burnettk 2023-01-17 12:23:51 -05:00
jasquat 6b5087c128 debugging cookies w/ burnettk 2023-01-11 14:52:12 -05:00
jasquat c18eafa812 fixed typeguard tests w/ burnettk 2023-01-09 15:53:13 -05:00
burnettk ecde7a25df upgrade apscheduler and fix mispelling 2022-11-21 21:15:48 -05:00
Dan 2338bbec55 Merge branch 'main' of github.com:sartography/spiff-arena into main 2022-11-21 11:08:50 -05:00
Dan 67a759cd89 Remove MoneyType from dependencies to avoid a new dependency on a rust complier when upgrading to pytno 11. 2022-11-21 11:08:44 -05:00
burnettk 24c728e2c0 eliminate security issue by removing py 2022-11-20 21:34:35 -05:00
burnettk 0e95768ba9 update mysql-connector-python 2022-11-20 21:31:45 -05:00
Jon Herron 19810f1727 Merge commit 'de30945eec9161570080b4858da967a7628ec86c' 2022-11-09 15:44:08 -05:00
jbirddog 5b01c50d6a Move to Python 3.11 (#27) 2022-11-09 13:45:16 -05:00
jbirddog 29fc062727 Point back to spiff main (#19) 2022-11-03 15:58:06 -04:00
jbirddog f0f88cd27c Track spiff step details more granularly (#17) 2022-11-03 15:07:46 -04:00
jbirddog 6daea00efa SpiffWorkflow cold start improvements (#13) 2022-11-02 11:35:10 -04:00
jasquat 6b0be70bdb avoid sending two errors to sentry w/ burnettk 2022-10-27 15:33:59 -04:00
Dan 1fcceaf264 Merge commit 'ac929cbae7717affed5fa357a56cf1a0256289d5' into main 2022-10-25 11:25:20 -04:00
burnettk 6e9aef9263 Merge commit '65283df3cbfe95c6cd0d69e1cc0204d91c5d535b' 2022-10-24 22:35:36 -04:00
burnettk f0b673282c Merge commit '70480e9f91a1053531ea5db32a13a791c39fd89f' 2022-10-24 10:44:38 -04:00
burnettk b114ff827b Merge commit 'd643de93e5ceaae28a6e65044cc85dd039530d2c' 2022-10-21 17:28:37 -04:00
jasquat 8ebf524c12 Merge commit 'f0b608789b6cdc3ef4303efac053746c98571a48' 2022-10-21 16:28:09 -04:00
Dan 2870b98150 Merge commit 'c5a2f8b16c9a614b944a6e4610594eba1dac7b9f' into main 2022-10-21 16:18:25 -04:00
jasquat f9a1003a88 resolved merge conflicts in backend w/ burnettk 2022-10-21 10:38:13 -04:00
burnettk 37decafb7d Merge commit '4f0f5b1ece069ec56f8eb4154d61334a321749a1' 2022-10-18 07:09:34 -04:00
Jon Herron 7ec037bbde Merge main, resolve conflicts 2022-10-12 15:32:33 -04:00
Jon Herron c30d6bbe1e Merge commit '883e65384f1e36a0310f4fdcff57ac486890cd5e' as 'spiffworkflow-backend' 2022-10-12 10:22:22 -04:00