* update to make this work for both local openid and keycloak again
* Update spiffworkflow-backend/bin/get_token
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
* fix coderabbit
---------
Co-authored-by: burnettk <burnettk@users.noreply.github.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
* Enable using read-only HTTPS repositories
If someone wants to clone read-only from an `https://github.com/...` URL, that should be permitted, and in that case they shouldn't be required to provide an SSH key.
* Add comment on ssh vs https behavior
* update to flask cors 5, which has a breaking change, which works locally
* ignore wrong safety issue
---------
Co-authored-by: burnettk <burnettk@users.noreply.github.com>
* Enable having created file match the local user:group
If you run `docker compose up` with no other arguments, the `process_models` directory and everything in it will be created with `root:root` ownership. That's not great for the local editing use-case.
With this change, running `UGID="$(id -u):$(id -g)" docker compose up` will result in any created files matching the ownership of the invoking user. If the user doesn't set `UGID`, then the existing ownership (`root:root`) is the the default.
* Remove the need to explicitly mark git repositories safe
By setting `*` for `safe.directory` when the image is built, we remove
the need to run `git config` when starting the app in Docker. This
enables the container to run as any user, not just `root`.
* Use local variable naming convention
* new view to kick off process instance
* now ProcessModelCard can kick off an instance
* show total child items rather than using a slash
* some initial code to implement frontend from figma w/ burnettk
* updated homepage tab names w/ burnettk
* updated field names in new ui w/ burnettk
* moved nabar to wrapper component w/ burnettk
* added basics for dark mode w/ burnettk
* use spiff logo and colors w/ burnettk
* use spiff logo and colors w/ burnettk
* corrected hover colors in dark mode
* some additional formatting
* added tree view to start process page in v3 site w/ burnettk
* some cleanup for the tree view w/ burnettk
* removed unused side nav items w/ burnettk
* actually navigate to locations when clicking in nav bar w/ burnettk
* moved custom button inline with other items w/ burnettk
* moved used items from v2 ui to v3 and change paths to v3 to newui and old to newuiv2
* updated v2 code to match main so we can more easily compare against it
* revert v2 route as well to be like main
* some fixes and clean and added profile button w/ burnettk
* revert nav bar w/ burnettk
* update profile menu so it can log out w/ burnettk
* added dark mode button back w/ burnettk
* profile menu update w/ burnettk
* profile menu update w/ burnettk
* moved side nav into own component w/ burnettk
* make sure you have to logged in to see the new ui w/ burnettk
* stack icons on collapse
* allow profile menu to go beyond constraint of sidenav
* profile menu when collapsed
* make thing not overlap
* removed duplicate attribute
* get tasks from the api instead of mock data
* added waiting for column w/ burnettk
* fixed header names of new pages w/ burnettk
* swap colors
* updated some bgcolors w/ burnettk
* updated some of the theme colors w/ burnettk
* some more color cleanup w/ burnettk
* add border to table and background lighter like design
* more colors w/ burnettk
* add border
* add height to tab indicator props
* use macro colors
* persist theme selection in local storage
* h1 as god intended
* fix highlight on main nav
* new started by me view
* avoid hardcoding color because themes
* fetch process instances
* extract shared junk into components
* extract more shared junk
* some cleanup to the new workflow view w/ burnettk
* update button
* more tweaks and fixes to task table w/ burnettk
* match design
* some updateds to headertabs w/ burnettk
* make the create custom tab button look more like the other tabs w/ burnettk
* added view mode tile table toggle w/ burnettk
* add startopen script to allow all interfaces for dev server
* hide complete task play button if no task
* remove waiting for from tile if blank w/ burnettk
* implemented hide complete w/ burnettk
* show non active
* fixed var w/ burnettk
* do not show action if user cannot complete task w/ burnettk
* time ago ts
* added timeago in words to task table w/ burnettk
* some updates to timeago for typsescript w/ burnettk
* some formatting to the tile w/ burnettk
* move arrow to top right
* make the whole tile clickable if there is a task w/ burnettk
* default sidenav to collapsed on mobile
* tile views by default on mobile
* completely hide menu on mobile, not just collapse
* get rid of autocollapse on mobile code, since it is all hidden
* mobile nav
* improve mobile nav
* when you open the nav on mobile, it should always be expanded
* some minor support for user group select
* lint
* persistent top nav so you can always access menu on mobile
* implemented group by option w/ burnettk
* allow ungroup
* only show Ungrouped if it is grouped
* group by text
* use accent color when grouping tasks
* added text.accent for dark mode w/ burnettk
* copied task show elements to v3 folder w/ burnettk
* newui task show routes work w/ burnettk
* converted task show elements to mui w/ burnettk
* fixed up task show page a big w/ burnettk
* added padding to tash show page w/ burnettk
* modified colors for dark mode and consistency w/ burnettk
* added interstitial and progress pages to new ui w/ burnettk
* go to newui appropriately from interstitial
* allow grouping tasks by the process group of their instance
* scroll to the card when selecting from the left nav tree w/ burnettk
* move task details to bottom of tile w/ burnettk
* navigate back to home page when no more tasks w/ burnettk
* avoid cutting off right side of main content
* a little cleanup w/ burnettk
* some format updates to h tags w/ burnettk
* fix class name for carbon
* Newuiv3a (#2046)
* wip to get only runnable prcess models for start process model page w/ burnettk
* wip to get only runnable prcess models for start process model page w/ burnettk
* wrote out method to group by process group w/ burnettk
* added test for grouping by process group
* some cleanup to prepare to be merged into the main newuiv3 branch
* fixed mypy issues
* fixed tests
* fixed lint issues w/ burnettk
---------
Co-authored-by: jasquat <jasquat@users.noreply.github.com>
* try to fix animations
* remove favorites icon and update pi creation flow w/ burnettk
* remove carbon from interstital page w/ burnettk
* title is bpmn_name and name is bpmn_id
* slow fade transition from interstitial to homepage
* do a hilariously long fade in when going from interstitial to homepage
* show last process instance id saved on interstitial
* get rid of local storage
* move last instance to top and avoid on mobile
* avoid useEffect and rock local storage
* added some error display w/ burnettk
* moved v3 specific code to v3 dir w/ burnettk
* some code rabbit suggestions w/ burnettk
* more code rabbit w/ burnettk
* remove bad id w/ burnettk
---------
Co-authored-by: burnettk <burnettk@users.noreply.github.com>
Co-authored-by: jasquat <jasquat@users.noreply.github.com>
Co-authored-by: Kevin Burnett <18027+burnettk@users.noreply.github.com>
* update the human task title when running pi migrations w/ burnettk
* updated some libs for safety w/ burnettk
---------
Co-authored-by: jasquat <jasquat@users.noreply.github.com>
* added migration detail table along with migration fe page w/ burnettk
* allow specifying bpmn process defintion when getting instance w/ burnettk
* added a test for migration reverting w/ burnettk
* added result states to migration page w/ burnettk
* updated spiffworkflow to fix migration revert issue w/ burnettk
* added test for the migration events api w/ burnettk
* fixed tests
* finished migration web page w/ burnettk
* coderabbit and other issues and added spiffworkflow-local realm and use that if running locally
* fixed pyl issue
* just check for the git revision key in tests instead of a value since the value could be None
* ruff
* updated configs for cypress tests
* use correct realm in ci
---------
Co-authored-by: jasquat <jasquat@users.noreply.github.com>
* some debug code to help track down slow processing times for mi tasks with larget data sets w/ burnettk
* use mapping cache for task models and bpmn processes and some linting cleanup
* some minor bugfixes w/ burnettk
* assign the correct bpmn process to the given guid w/ burnettk
* fixed data migration tests w/ burnettk
* unit tests are passing w/ burnettk
* integration tets are passing w/ burnettk
* some cleanup while code reviewing w/ burnettk
* some more cleanup w/ burnettk
* pass new args to TaskService in data migration w/ burnettk
* fixed broken test w/ burnettk
* allow running acceptance tests without keycloak w/ burnettk
---------
Co-authored-by: jasquat <jasquat@users.noreply.github.com>
* some debug code and potential fixes to avoid requeueing future tasks w/ burnettk
* actually insert the queued time into the future task table w/ burnettk
* fixed tests w/ burnettk
* handle missing process instances better from celery worker and updated some comments w/ burnettk
* added comment w/ burnettk
* minor fixes w/ burnettk
* added test for should_schedule_waiting_timer_events w/ burnettk
* added test to ensure we do not queue recently queued tasks again w/ burnettk
* remove traceback code
---------
Co-authored-by: jasquat <jasquat@users.noreply.github.com>
Co-authored-by: burnettk <burnettk@users.noreply.github.com>
* check if user has permissions to messages before attempting call w/ burnettk
* fixed variable typo w/ burnettk
---------
Co-authored-by: jasquat <jasquat@users.noreply.github.com>
* fix gunicorn and wait_for_db_schema_migrations
* avoid bad gunicorn version
* actually check that request succeeded
---------
Co-authored-by: burnettk <burnettk@users.noreply.github.com>
* explicitly wait for db migrations to be completed instead of sleeping w/ burnettk
* code rabbit suggestion w/ burnettk
* get rid of the set x w/ burnettk
---------
Co-authored-by: jasquat <jasquat@users.noreply.github.com>
* imported patch from old message_improvements branch w/ burnettk
* wip.
* merging in changes from message_improvements
* remove patch files that were accidendetally added.
* Added a modal for editing a correlation. Added ability to delete whole correlation keys.
A little css cleanup.
* * Removing migration - will add back in at the end.
* The Message models API should not require page and per_age parameters, it will return all.
* The Message model list should return a full json description of all messages/correlations for all containing groups.
*
* wip
* Add import, fix class name
* Getting ./bin/pyl to pass
* Getting ./bin/pyl to pass
* Some fe lint fixes
* Some ruff fixes
* Commands to nuke poetry dirs
* Temp skipping of a couple tests
* Getting ./bin/pyl to pass
* This needs to be back in
* Revert back to main
* Factored out data store handling
* Working on factoring out collecting messages, has test failure
* Formatting
* Fixed up test failures
* Remove commentted out lines
* Adding fields
* Fix merge issue
* Re-enable modal
* WIP
* Untested relationships
* Remove correlation key table
* Remove retrieval expression from uniqueness
* Remove commentted out lines
* WIP
* WIP
* WIP
* WIP
* WIP
* Make mypy pass
* Getting formatters to pass
* Add migration
* WIP fixing tests
* WIP fixing tests
* WIP fixing tests
* WIP fixing tests
* WIP fixing tests
* Getting ./bin/pyl to pass
* Fix skipped test
* Fix skipped test
* Getting ./bin/pyl to pass
* Remove unused method
* Remove unused methods
* Clean up unused code
* Refactor to support creating single messages from the UI
* Untested support for processing one process_group
* WIP test
* WIP test
* Filled out test
* Getting ./bin/pyl to pass
* Message Editor Modal Work
* Change migration and add in schemas.
* Swtich to using the associated branch of the process BPMN.io mods
* Get the backend returning messages created from the frontend to the drop down list in the BPMN.io editor.
* Merge main, fix up test
* Getting ./bin/pyl to pass
* Show path in location
* Rename var
* install packages from bpmn-js-spiffworkflow as well for local development
* process group api can add and update message models now w/ burnettk
* backend tests are passing now w/ burnettk
* the launch message edit button is loading the editor w/ burnettk
* updated bpmn-js-spiffworkflow
* pyl is passing w/ burnettk
* updated bpmn-js-spiffworkflow w/ burnettk
* updated bpmn-js-spiffworkflow w/ burnettk
* fixed console errors w/ burnettk
* a couple tweaks w/ burnettk
* save the message json in the new format from the mform w/ burnettk
* display the correlation props in the form w/ burnettk
* default to empty schema so the format is obvious
* allow removing correlation props from web ui w/ burnettk
* added save notification when saving a message on a process model w/ burnettk
* fixed broken test w/ burnettk
* Updating test cases to new message format, tests are failing
* support schema from messages in frontend
* Fixing tests
* Fixing tests
* Fixing tests
* removed references to correlation keys and removed unused components w/ burnettk
* removed temp mesasge model edit button w/ burnettk
* Make mypy pass
* Fixing tests
* Fixing tests
* Getting ./bin/pyl to pass
* save deleted messages before attempting to add new ones w/ burnettk
* set state for the message id so it can be changed w/ burnettk
* do not wait for the message id to be set since it is not necessary w/ burnettk
* updated bpmn-js-spiffworkflow w/ burnettk
* build images for this branch w/ burnettk
* put location in path of message-models so we can control permissions on it w/ burnettk
* fix black
* some coderabbit suggestions
* pull in spiff fix
* Default schema to {}
* Temp fix for invalid schema
* updated bpmn-js-spiffworkflow
* some updates for issue 1626
* minor name tweaks and attempts to update message dropdown in panel when message changes - does not work yet w/ burnettk
* updated bpmn-js-spiffworkflow w/ burnettk
* attempt to call add_message.returned event when message updates w/ burnettk
* treat formData as a state in the MesasgeEditor so it can be updated when the form contents is modified w/ burnettk
* updated bpmn-js-spiffworkflow w/ burnettk
* Feature/merge correlation properties (#1693)
* Merge XML Correlation properties with Process group properties
* updates for messages w/ burnettk
---------
Co-authored-by: theaubmov <ayoubaitlachgar98@gmail.com>
Co-authored-by: jasquat <jasquat@users.noreply.github.com>
* do not wait for message id state to be set to better support new messages w/ burnettk
* updated SpiffWorkflow w/ burnettk
* some cleanup from coderabbit and linting
* added index to message tables, run typecheck in ci, and other updates while code reviewing w/ burnettk
* updated bpmn-js-spiffworkflow w/ burnettk
* remove branch to build
---------
Co-authored-by: jasquat <jasquat@users.noreply.github.com>
Co-authored-by: danfunk <daniel.h.funk@gmail.com>
Co-authored-by: Jon Herron <jon.herron@yahoo.com>
Co-authored-by: burnettk <burnettk@users.noreply.github.com>
Co-authored-by: jasquat <2487833+jasquat@users.noreply.github.com>
Co-authored-by: theaubmov <ayoubaitlachgar98@gmail.com>
* get token object for local development env
* print just token to stdout in case we want to shell out to this script for some reason
* migrated get_token bash script to python version w/ burnettk
* ruff should ignore print statements in bin script w/ burnettk
---------
Co-authored-by: unknown <hdl560@163.com>
Co-authored-by: HunterIsMe <36193162+HunterIsMe@users.noreply.github.com>
Co-authored-by: burnettk <burnettk@users.noreply.github.com>
Co-authored-by: jasquat <jasquat@users.noreply.github.com>
* added new table to handle called process relationships
* process caller api endpoint is working again w/ burnettk
* fixed more tests and mypy w/ burnettk
* unit tests are passing and commented out unrelated failing test w/ burnettk
* all tests are passing almost w/ burnettk
* uncommented flakey test w/ burnettk
* minor change while reviewing w/ burnettk
* some changes from coderabbit suggestions w/ burnettk
* commented out sampling change w/ burnettk
* name the foreign keys on the process caller table w/ burnettk
---------
Co-authored-by: jasquat <jasquat@users.noreply.github.com>
* added test to demonstrate data store issue when run in certain contexts w/ burnettk
* added method to add kkv data store getters back onto tasks if appropriate w/ burnettk
* removed debug code w/ burnettk
---------
Co-authored-by: jasquat <jasquat@users.noreply.github.com>
* updated import pi test to set task data w/ burnettk
* fixed persist test so it loads the processor with data
* load data and completed tasks when getting bpmn json for an instance
* save start and end times on tasks on import w/ burnettk
* verify we are saving start and end times for imported process instances w/ burnettk
---------
Co-authored-by: jasquat <jasquat@users.noreply.github.com>
* added basic support to store process instance file data on the file system w/ burnettk
* the files need to be in a hashed directory structure w/ burnettk
* fixed exception message w/ burnettk
* use the same entry method to the contents of data file w/ burnettk
* fixed hash method w/ burnettk
* make hash method easier to read w/ burnettk
* added a migrator and test for migration w/ burnettk
* fix a couple things while testing
---------
Co-authored-by: jasquat <jasquat@users.noreply.github.com>
Co-authored-by: burnettk <burnettk@users.noreply.github.com>
* check for mi tasks first before checking more newest in task show api w/ burnettk
* remove console
---------
Co-authored-by: jasquat <jasquat@users.noreply.github.com>
Co-authored-by: burnettk <burnettk@users.noreply.github.com>
* initial script to find get_current_user calls
* handle pre and post scripts as well
* refactor
* omit absolute root dir path when printing
* avoid printing NS
* consolidate lxml parsing in one place
---------
Co-authored-by: burnettk <burnettk@users.noreply.github.com>
* added new api to show secrets so we can use that in permissions
* updated frontend to use new secret show value api
* cleaned up secret_show method
---------
Co-authored-by: jasquat <jasquat@users.noreply.github.com>
* Prevent duplicated path prefix elements in generated URLs
* add more debug info
* pure refactor
* let flask determine how to access site
* build this branch
* build image
* use more url_for, which includes a slash, and things are working locally
* fix hopefully the last missing url_for
* add some code that works for any openid provider
* one more url_for and remove more backend url config references
---------
Co-authored-by: Bret Mogilefsky <bmogilefsky@gmail.com>
Co-authored-by: burnettk <burnettk@users.noreply.github.com>
* allow setting the path prefix of the server w/ burnettk
* added error in case someone was successfully using SPIFFWORKFLOW_BACKEND_APPLICATION_ROOT w/ burnettk
* Update docs/DevOps_installation_integration/path_based_routing.md
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
---------
Co-authored-by: jasquat <jasquat@users.noreply.github.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
* added script to import process instance and updated some docs for redis and celery w/ burnettk
* pyl and removed bad gitignore w/ burnettk
---------
Co-authored-by: jasquat <jasquat@users.noreply.github.com>