Commit Graph

1751 Commits

Author SHA1 Message Date
Dan cc915ac25a refactoring the study service. 2022-02-09 08:50:00 -05:00
mike cullerton 4058078c12 index, not index_of 2022-02-08 17:45:14 -05:00
mike cullerton 2e4bab9d04 Add TODO 2022-02-08 15:04:47 -05:00
mike cullerton 65d6728be7 pass specs to _add_all_workflow_specs_to_study 2022-02-08 15:03:00 -05:00
mike cullerton 420f50f44a Defaults for WorkflowSpecInfo 2022-02-08 14:40:33 -05:00
Dan f1a75ca6bf getting default display_order working correctly 2022-02-08 14:10:56 -05:00
Dan 25ecc1593a test_workflow_spec_api passing. 2022-02-08 13:35:27 -05:00
mike cullerton df85e5cd7f Merge branch 'feature/spec_files_wthout_db' of https://github.com/sartography/cr-connect-workflow into feature/spec_files_wthout_db 2022-02-08 12:57:10 -05:00
mike cullerton 916418dcf3 For Dan 2022-02-08 12:53:20 -05:00
Dan 082ba18c2d got one more test to work. 2022-02-08 11:34:07 -05:00
Dan 6c0e38c0a5 Merge branch 'feature/spec_files_wthout_db' of github.com:sartography/cr-connect-workflow into feature/spec_files_wthout_db 2022-02-08 11:31:56 -05:00
Dan dc040f190e got one more test to work. 2022-02-08 11:30:13 -05:00
alicia pritchett 38c30adbfc i think this fixes adding and removing libraries to a spec 2022-02-08 11:27:20 -05:00
mike cullerton 3f856355e2 Merge branch 'git-integration-596' into feature/spec_files_wthout_db
# Conflicts:
#	config/testing.py
#	crc/services/lookup_service.py
2022-02-08 10:38:03 -05:00
alicia pritchett 7b031c26dc small change to libraries in workflow.py 2022-02-08 10:06:20 -05:00
mike cullerton 265381f48c Delete TODO comment. Done 2022-02-07 16:44:59 -05:00
mike cullerton 3444a34527 Merge branch 'feature/spec_files_wthout_db' of https://github.com/sartography/cr-connect-workflow into feature/spec_files_wthout_db 2022-02-07 16:34:03 -05:00
mike cullerton 2bd833446e get_spec not static 2022-02-07 16:33:42 -05:00
alicia pritchett df67572549 puts specs into categories 2022-02-07 16:27:45 -05:00
mike cullerton 2bd0647cd4 No longer pass category_name 2022-02-07 16:13:38 -05:00
mike cullerton 80322b392f Get category_name from fields 2022-02-07 16:09:51 -05:00
alicia pritchett aa9807a543 heres the categories 2022-02-07 15:45:09 -05:00
Dan f40fb26a8f a few more tests passing 2022-02-07 15:17:32 -05:00
Dan 1d7ecad51f Merge branch 'feature/spec_files_wthout_db' of github.com:sartography/cr-connect-workflow into feature/spec_files_wthout_db 2022-02-07 14:58:42 -05:00
Dan 4b8d193fb9 a few more tests passing 2022-02-07 14:58:25 -05:00
alicia pritchett 6c2690d27f rm duplicate method 2022-02-07 14:12:29 -05:00
alicia pritchett d4b04f5b80 fixes the import thing for real 2022-02-07 14:10:10 -05:00
mike cullerton e24a81b924 Merge branch 'feature/spec_files_wthout_db' of https://github.com/sartography/cr-connect-workflow into feature/spec_files_wthout_db 2022-02-07 13:35:51 -05:00
Dan d64853fa5b two passing tests around the WorkflowSpecService 2022-02-07 13:34:13 -05:00
mike cullerton b6d6e21360 Merge branch 'feature/spec_files_wthout_db' of https://github.com/sartography/cr-connect-workflow into feature/spec_files_wthout_db 2022-02-07 13:01:36 -05:00
Dan 056f901f9a WIP - its just caos right now. 2022-02-07 12:59:48 -05:00
Dan ad095aaaf5 don't try to load the workflowspecservice too early. 2022-02-07 12:38:00 -05:00
Dan abc17a8aff load the workflow_spec_service from app to avoid frequent file scans. 2022-02-07 12:30:20 -05:00
Dan e4f7e14a4d Merge branch 'feature/spec_files_wthout_db' of github.com:sartography/cr-connect-workflow into feature/spec_files_wthout_db 2022-02-07 12:18:36 -05:00
Dan 1c384a78e9 the tests kind of try and run now ... 2022-02-07 12:18:32 -05:00
alicia pritchett c78140e60c fixed spec_file.py 2022-02-07 12:17:49 -05:00
alicia pritchett 2a6578b785 fixed workflow.py 2022-02-07 12:10:57 -05:00
mike cullerton 2a6e8315a1 *** WIP ***
Committing to deal w/ the migration
2022-02-07 11:22:45 -05:00
Dan 8ec39bca15 Merge branch 'feature/spec_files_wthout_db' of github.com:sartography/cr-connect-workflow into feature/spec_files_wthout_db 2022-02-07 11:00:28 -05:00
Dan ed07907ee2 at least allow the tests to spin up, even if they all fail. 2022-02-07 11:00:19 -05:00
alicia pritchett 66906c3786 fix a couple things 2022-02-07 10:57:34 -05:00
Dan 1abb2490e5 Merge branch 'feature/spec_files_wthout_db' of github.com:sartography/cr-connect-workflow into feature/spec_files_wthout_db 2022-02-07 10:33:28 -05:00
Dan 4ba122fff3 WIP - completely broken. 2022-02-07 09:12:11 -05:00
alicia pritchett 699d0ab797 updated method calls in workflow.py
except for reordering
2022-02-04 15:31:36 -05:00
Dan 2383c7d76d WIP - lots of random changes, trying to swtich over 2022-02-04 14:50:31 -05:00
alicia pritchett 2fb6746f6b new methods 2022-02-04 14:45:52 -05:00
mike cullerton 36911d35ac Added description of the service 2022-02-04 14:03:37 -05:00
Dan 6765afbd02 WIP - Move the categories and specifications out of the database. 2022-02-04 13:51:39 -05:00
mike cullerton 2706632cda Fix origin/origin problem 2022-02-03 07:14:16 -05:00
mike cullerton 6fa729900c Bug? origin/origin/brach, rather than origin/branch 2022-02-03 07:10:38 -05:00
mike cullerton 64ffbde3d9 Remove unused code 2022-02-03 06:47:41 -05:00
mike cullerton 2d48151976 Fix when checkout branch does not exist yet
First attempt at merge
2022-02-03 06:47:02 -05:00
mike cullerton e9c7f3d9b6 Force checkout of branch when loading repo 2022-02-02 14:48:47 -05:00
mike cullerton 21b5d034e2 authentication
variable name changes for readability
removed unused code
2022-02-02 14:11:41 -05:00
Dan e103845218 fixing failing tests around default primary processes
Removing a ton of ununsed code from example_data.
2022-02-02 13:30:54 -05:00
mike cullerton a45c5959ef First attempt at adding credentials 2022-02-02 13:24:54 -05:00
Dan 4ec6e403f5 1. Created a UserFileService, so it's clear what we use when for File Services, UserFiles, SpecFiles, and ReferenceFiles each function differently.
2. Reference Files and Spec Files are written to disk, they do not exist in the database at all.
2022-02-02 12:59:56 -05:00
mike cullerton 6f233a9b79 removed unused code 2022-02-02 12:51:14 -05:00
mike cullerton 35e2a53b09 Actually use the model 2022-02-02 12:35:08 -05:00
mike cullerton 55697c6c88 Return the schema 2022-02-02 12:04:28 -05:00
mike cullerton ec054bbdf1 set tracking on the active branch 2022-02-02 11:48:05 -05:00
mike cullerton 558d6f47e2 removed unused code from get_repo
started pull_from_remote
2022-02-02 11:30:05 -05:00
mike cullerton 2a0d71aab6 Status was removed from the model 2022-02-02 10:04:52 -05:00
mike cullerton 1cb6465f22 Return the schema 2022-02-02 10:04:02 -05:00
mike cullerton 8a8c3de8c4 clone repo if it doesn't exist 2022-02-01 16:25:46 -05:00
alicia pritchett c1a5032014 WIP modifying workflow service to remove value expression 2022-02-01 15:44:55 -05:00
mike cullerton 070c3cfd5d *** WIP ***
New API endpoints, and associated methods.
Services for the new endpoints
Minimal test
2022-02-01 10:49:35 -05:00
mike cullerton c07c429ae1 Fix for new version of Pandas. They check data type now. 2022-02-01 10:42:18 -05:00
mike cullerton c9b7d95a83 *** WIP ***
Beginning of Git integration
- added gitpython to Pipfile
- started additions for api, model, service, and a test
2022-01-28 16:11:36 -05:00
Dan 4c00a5762f partial commit - new spec_file_service, and new spec_file_api endpoints that use spec and file name, not file id.
removed worklow_sync
cleaned up file and workflow models
most of the test are broken.
2022-01-28 06:42:37 -05:00
Dan Funk 97c29bf77c
Merge pull request #449 from sartography/files-to-filesystem-572
Files to filesystem 572
2022-01-26 10:11:26 -05:00
mike cullerton d82367ab2a Move temp_migration_service code into migration 7225d990740e
Delete test_files_to_filesystem and test_files_from_filesystem--they were only used to give me access to the migration methods
2022-01-26 09:58:46 -05:00
Dan f3637ee6a0 resolving todos, as they are done, and removing commented out code that is no longer in use. 2022-01-25 16:37:17 -05:00
Dan 8529465322 Removed the method get_spec_data_files completly - using get_spec_files and get_spec_data to get this information instead.
Only load the spec data files if you are creating a new workflow, otherwise just deserialize the json.
Removed the stuff about calculaing the version of the spec, as we don't use it.
2022-01-25 16:10:54 -05:00
mike cullerton ae86ab4790 Make erroring workflows visible
The `process_erroring_workflows` method is called by our scheduler in __init__.py
2022-01-25 12:18:29 -05:00
Dan Funk 58b3378fbf
Merge pull request #448 from sartography/get-spec-from-workflow-id-589
Get spec from workflow id #589
2022-01-24 16:40:53 -05:00
Dan 9690ebf883 minor minor stuff. 2022-01-24 14:43:36 -05:00
mike cullerton 1fe65ff6b7 Script to get a workflow spec from a workflow id. 2022-01-24 12:40:50 -05:00
mike cullerton 662014d378 Merge branch 'fix-login-590' into missing-bpmn-534 2022-01-21 15:31:13 -05:00
mike cullerton 7da2fa2171 Fix for failing tests 2022-01-21 15:13:05 -05:00
mike cullerton 65345a8e91 We can now set our own user_id in instance.config so that user dhf8r isn't always logged in. 2022-01-21 14:42:36 -05:00
mike cullerton 91fa44b2ab ** WIP **
Committing so I can work on another ticket.
2022-01-21 14:37:11 -05:00
mike cullerton 58658d9507 Create separate tags for reference files and spec files 2022-01-20 15:58:31 -05:00
mike cullerton bc65f1c64a Limit modifying reference files to admins 2022-01-20 15:43:32 -05:00
mike cullerton 76b09a418e Created separate api files for spec_files and reference_files 2022-01-20 15:22:47 -05:00
mike cullerton ca54b850cd UNDO my previous commit regarding `get_files needs to have workflow_spec_id`
We need to call `get_spec_files` instead now
2022-01-20 14:57:32 -05:00
Dan f815add699 1. Add a default directory for the location of SYNC files.
2. Added a last_updated column to the lookup table
3. The Lookup service now uses the above, and compares it to the actual file date, we can then rebuild the lookup if needed.
4. That 755 migration loads up the models, so when you change the models, the migration starts to fail.  Not really sure what to do here, but modify the migration while we are in process.
2022-01-20 13:05:58 -05:00
mike cullerton 9ea1399578 get_files needs to have workflow_spec_id 2022-01-20 09:54:22 -05:00
mike cullerton 68820c67cb Removed (almost) all references to WorkflowSpecDependencyFile
(There is still a call in the lookup service, but we need to decide how to fix that)
2022-01-19 16:12:54 -05:00
mike cullerton 16a9a18c5b Fixed get reference file info, and added test 2022-01-19 15:17:35 -05:00
mike cullerton 091d71eb0f Cleaned up code around differences between file info and file data
Cleaned up some api code around differences between file, spec_file, and reference_file
Cleaned up some api code around differences between file info and file data
Fixed some tests for file api
2022-01-19 13:47:14 -05:00
mike cullerton d83f28e1a7 Pushed so Dan can play 2022-01-18 15:55:49 -05:00
mike cullerton 68ac056457 Merge branch 'dev' into files-to-filesystem-572 2022-01-18 08:18:14 -05:00
mike cullerton 6da6e05171 *** WIP ***
code for updating spec files
some cleanup

tests pass, but we don't have all the tests we need.
2022-01-13 15:24:29 -05:00
mike cullerton b99ed73951 Remove unused imports 2022-01-12 15:00:26 -05:00
mike cullerton cfa9f00bf3 *** WIP ***
Moved reference files to their own service
2022-01-12 14:37:33 -05:00
mike cullerton b6b9482a64 *** WIP ***
Incremental commit. Mainly cleaning up failing tests.
2022-01-12 13:16:09 -05:00
Dan e67a1554ea Always but always but ALWAYS, use server_default=func.now() when setting up a datetime field we autopopulate. 2022-01-12 12:33:59 -05:00
Dan c2a11a7d95 fixing an error where I accidentally deleted a bit of the API. 2022-01-12 09:58:34 -05:00
Dan d346589e07 1. added the ability to filter on level and user.
2. added a total to the response, so you can see what the total count of users is.
3. adding user_uid to the task_log table.
2022-01-12 08:58:50 -05:00
mike cullerton 9cc91f92c3 *** WIP ***
cleanup - removing commented code
2022-01-11 15:55:08 -05:00
mike cullerton 4df2ed6ce4 *** WIP ***
Failing tests, and missing functionality.
Committing to get stuff on Github.
2022-01-11 15:30:22 -05:00
Dan 7176452fe3 forgot the migration, also fixing an error in the TaskLogQuerySchema. 2022-01-10 13:26:16 -05:00
Dan 962d05c875 1. Created a TaskLoggingService to encapsulate what we are doing with Task Logging through BPMN Script calls and API calls from the front end.
2. Added two api endpoints that will allow us to get all the logs for a specific workflow or study.
3. Assured that requests for logs are paginated, sortable, and can be limited to a specific code if needed.
4. Assure that we only use logging levels that match the log levels of Python.
2022-01-10 13:16:54 -05:00
mike cullerton f537fd7fbf *** WIP *** 2022-01-07 15:58:23 -05:00
mike cullerton dc27f795c8 *** WIP ***
Committing because it is Friday afternoon, and my computer is acting flaky
2022-01-07 15:34:51 -05:00
mike cullerton 86a6039dc8 *** WIP ***
**Many** tests are failing!

Committing so I can merge dev into this branch
2022-01-06 11:46:54 -05:00
mike cullerton 110e2c56f8 cli entry point for temp_migration_service.
Ultimately, this will call the real service.
2022-01-04 07:28:23 -05:00
mike cullerton 7f9519736c fixed some issues with how we look up records. Try to depend on the data_obj 2022-01-04 07:26:12 -05:00
mike cullerton 2cd0f84a47 Merge branch 'dev' into files-to-filesystem-572 2022-01-03 08:06:17 -05:00
Dan 1446302a04 A quick fix for an error we are seeing in testing. 2021-12-30 15:27:31 -05:00
Dan 3480e1c8ab use a signal, in addition to firing off a cancel notify when a workflow is restarted. 2021-12-23 15:30:09 -05:00
Dan bd3176eea6 Fixes #578 - issue with us displaying an incorrect end event in some cases. 2021-12-22 16:27:52 -05:00
Dan c83b047881 Fixing some bugs I introduced with the latest fix. 2021-12-21 16:22:41 -05:00
Dan f129509802 Looks like reording the deletes allows us to remove workflow specs a little easier. Tested this with libraries, and seems to work ok. 2021-12-20 14:36:45 -05:00
mike cullerton 3fa5505970 Cleanup - remove print statements 2021-12-17 12:30:10 -05:00
mike cullerton 6073412d82 Clean up imports 2021-12-17 12:03:45 -05:00
mike cullerton aa27df7840 Process the spec files and their metadata 2021-12-17 11:46:21 -05:00
alicia pritchett a81f25f0ee Just kidding. We should make deepcopy and put in fake data 4 valdiation
see above. previously i deleted this, because i didnt want unitializsed data in task data. well heres a hint. don't put it in task data. make a deep copy and hold on to that for validation pursposes
2021-12-16 14:47:04 -05:00
mike cullerton 5c90ce01a6 *** WIP ***
Temp services `ToFilesystemService` and `FromFilesystemService` for migrating files To and From the filesystem - Not sure where these classes will end up
Tests to call the two services.
upgrade method in migration that writes workflow spec files and metadata to filesystem
2021-12-16 14:22:37 -05:00
mike cullerton 338352017b *** WIP ***
Moving files to the filesystem
Tools for reading/writing metadata for categories and specs
2021-12-16 08:41:49 -05:00
Dan 421e4fd9aa Fixes related to resent commit to SpiffWorkflow that provides better handling for workflows that loop back on themselves. 2021-12-15 16:00:31 -05:00
Dan Funk e62a99af96
Merge pull request #438 from sartography/bug/fix-task-data
Bug/fix task data
2021-12-13 13:31:37 -05:00
Dan Funk b5f2fe05dc
Merge pull request #439 from sartography/workflow-spec-delete-217
Problem deleting workflow spec #217
2021-12-13 13:19:56 -05:00
Dan c46800171d Merge remote-tracking branch 'origin/dev' into bug/fix-task-data 2021-12-13 13:18:00 -05:00
Dan ad9a480f93 Merge remote-tracking branch 'origin/dev' into waiting-workflow-errors-566 2021-12-13 13:05:02 -05:00
Dan Funk 0bb06f380a
Merge pull request #436 from sartography/more-study-statuses-562
More study statuses #562
2021-12-13 13:02:57 -05:00
Dan Funk 407cc8dd69
Merge pull request #435 from sartography/bug/scheduler_task_recursion_depth
#557 - scheduler recursion because each call to 'process_witing_tasks…
2021-12-13 13:01:31 -05:00
alicia pritchett cdaad5dcc0 Allow 'none' for progress_status
Well this fixes tests but also, I dont think you necessarily have this right off the bat if you havent done anything in a study, which i handle on the frontend. so null is fine
2021-12-13 12:34:32 -05:00
alicia pritchett 8b27423172 Updating study model schema to include Progress Status 2021-12-13 12:29:15 -05:00
mike cullerton daebf42a30 Move some of the work in `crc.api.workflow.delete_workflow_specification` to separate workflow_service methods
Added a session.commit to `delete_workflow_spec_task_events`
2021-12-13 11:04:28 -05:00
mike cullerton acbb8898e4 Merge branch 'more-study-statuses-562' into waiting-workflow-errors-566 2021-12-10 16:52:07 -05:00
mike cullerton f748fa3db8 Removed unused imports 2021-12-10 16:48:28 -05:00
mike cullerton d30405226e Script to get the new progress_status value 2021-12-10 16:16:33 -05:00
mike cullerton 100e822f2e Fixes for set_study_progress_status to use new ProgressStatus enum 2021-12-10 16:15:49 -05:00
mike cullerton 9cd5022bf0 Set progress_status to in_progress when creating a new study.
-- I'm not sure if this is what we want.
2021-12-10 16:00:33 -05:00
mike cullerton 6d09aa1817 We moved the new statuses to a new column and created a separate enum class for them.
They really are sub_statuses of the in_progress status
2021-12-10 15:57:02 -05:00
mike cullerton 61975093f9 Renamed some files to include the word `progress` 2021-12-10 15:47:34 -05:00
alicia pritchett f9fbb32641 Take this garbage out
I can say that because I originally wrote that garbage
2021-12-10 12:10:08 -05:00
alicia pritchett 962cf7c32c Fixes problem with initializing some task data fields
we had a problem where sometimes, task data gets some values set in its fields to None, which conflicts with default values. this fixes that
2021-12-10 11:33:26 -05:00
mike cullerton 52baf25459 In `WorkflowService.do_waiting`, if a workflow causes an exception, change its status from `waiting` to `erroring` so we don't continue to call it in `do_waiting`. 2021-12-09 15:33:39 -05:00
Dan 06960644fa #557 - scheduler recursion because each call to 'process_witing_tasks' would kick off an additional scheduler by settting up a new app_context. 2021-12-09 08:54:44 -05:00
Dan Funk 23fa28bc23
Merge pull request #434 from sartography/bug/ldap_service_rollback_expoded_the_world
The LDAP service didn't do a good enough check to see if the record w…
2021-12-09 06:42:02 -05:00
Dan 412290f2ab The LDAP service didn't do a good enough check to see if the record was already in the database. This caused an error, which left the workflow in a waiting state. And that waiting state meant the error would just happen a million times over again until we pushed up this code change. 2021-12-09 06:33:30 -05:00
mike cullerton 6db9cdabc7 New study statuses 2021-12-08 10:50:30 -05:00
Dan Funk 0cfa59bfea
Merge pull request #429 from sartography/chore/clear-form-data-553
Fixes #553 - Don't load Form data
2021-12-08 10:37:44 -05:00
Dan Funk b28ddef842
Merge pull request #430 from sartography/study-status-scripts-556
Study status scripts #556
2021-12-08 10:36:53 -05:00
Dan ffafc1674a assure we don't overwrite task data with a previous form submission if that data already exists. 2021-12-07 17:04:20 -05:00
mike cullerton 8813098190 Updated to use new ProtocolBuilderCreatorStudy model and schema 2021-12-06 14:37:42 -05:00
mike cullerton db1f3ba6ab Model and schema for new StudyCreator api endpoint
Update StudyModel to use new model
2021-12-06 14:36:34 -05:00
mike cullerton 791328d520 Don't need to ask the question twice 2021-12-03 12:18:17 -05:00
mike cullerton 6be9529b22 Fixed the class names 2021-12-03 11:53:21 -05:00
mike cullerton 34b4913542 Restructured `do_task`
Fixed up `do_task_validate_only`
2021-12-03 11:45:02 -05:00
mike cullerton 52bfa848ac *** WIP ***
Script to set study status
2021-12-02 17:11:28 -05:00
mike cullerton 8c66a3d2ef Script to get the status of the current script 2021-12-02 15:30:47 -05:00
Dan 5cf011f1d9 Quick fix for ldap. 2021-12-02 12:19:36 -05:00
alicia pritchett 7524e97c9a Fixes #553 - Don't load Form data
adds an extension so that you can opt to clear out form data on a given task
2021-12-01 16:11:52 -05:00
Dan ad93b5fae6 We were not correctly handing the possibility of there only being a waiting task (and no ready tasks).
We also had a problem with the validator throwing a 500 when it was trying tell us it would never finish validation.
2021-11-30 12:44:35 -05:00
Mike Cullerton ec9d8f8a5c
Merge pull request #425 from sartography/bug/slow_ldap
Remove wild-card from uid search, it performs very badly.  Add a bit …
2021-11-30 11:09:42 -05:00
Mike Cullerton 8cc581611e
Merge pull request #426 from sartography/feature/performance_improvement
Performance upgrades - study dashboard in less than 2 seconds now
2021-11-30 11:09:28 -05:00
Dan Funk 8c30df011b
Merge pull request #427 from sartography/workflow-status-script-548
Workflow status script #548
2021-11-30 10:51:57 -05:00
Dan Funk c8c8c8b244
Merge pull request #424 from sartography/xls-xlsx-issue-540
Xls xlsx issue #540
2021-11-30 10:50:33 -05:00
mike cullerton 0f1ccd7db5 New script to check workflow status.
Includes test and test workflow
2021-11-30 08:54:15 -05:00
Dan 455c1035f1 Performance upgrade to script.py - reduce the number of times we generate the augmented list of script functions for running python evals.
Performance upgrade to study_service.py - Don't query on the whole WorkflowModel, just get the status that we need.  Saves lots of complex joins.
Performance upgrade to SpiffWorkflow - don't convert to box unless we have to do so.
2021-11-29 17:48:05 -05:00
Dan e5b1daa3d9 Remove wild-card from uid search, it performs very badly. Add a bit of logging so we can easily see performance in the future. 2021-11-29 11:03:14 -05:00
Dan 8ec58fd6d7 Assure better error messages when parsing word documents with jinja syntax.
I also have a pull request into the folks that run the python docx library to improve their error messages that we depend on here.
2021-11-23 14:38:48 -05:00
Dan 4a1285b8e0 When validating a workflow, don't run the master workflow multiple times, its a huge waste of time.
Provide decent data when calling get_study_associate(s) scripts.
2021-11-22 17:17:19 -05:00
Dan 5bb7dbfb19 Improve the error messages returned from jinja template processing. Try to find the actual line with an error in it. 2021-11-22 14:46:33 -05:00
Dan 12b78c1f99 Value Errors should also alert us that we can't serialize the json.
Enum Label was depending on the options attribute not existing in some situtations, which is a bad assumption.  Rather, check for specific properties, and call back to using options as the default.
2021-11-22 12:37:10 -05:00
Dan 4d1f4429ff Fixing a bug in enum_label that was not working when lookup up an select list from a spreadsheet.
Assure we raise more thoughtful error messages when running getting exceptions in engine tasks.
Field Options should always be available now due to a fix in Spiffworkflow.
2021-11-22 12:26:30 -05:00
Dan 7b02f46403 During validation, options were not being handled correctly for certain types of lookups. 2021-11-17 13:38:41 -05:00
mike cullerton cb77db26a3 Minor edit, for clarity 2021-11-16 12:05:20 -05:00
mike cullerton 9f18484ebb Grab exception when reading older xls spreadsheet into pandas
Renamed `xls` variable to `xlsx`, so it makes more sense
Added a hint to error_service for validation
2021-11-16 11:54:31 -05:00
Dan Funk 8c166bd029
Merge pull request #423 from sartography/test-protocol-builder-519
Test protocol builder #519
2021-11-11 11:49:57 -05:00
Dan f4f3842059 Fixing a stupid mistake. 2021-11-11 11:45:35 -05:00
Dan 197b75c6bf Quickfix - validation was failing if we had a date object in the task data, but this isn't really a problem. We now use the same JSON serializer as flask does, when doing validations, to better verify behavior with the front end. 2021-11-11 11:18:58 -05:00
mike cullerton c7147274f0 Resolving issues from code review 2021-11-10 17:43:34 -05:00
mike cullerton a8b7cd8bba Merge branch 'dev' into test-protocol-builder-519 2021-11-10 16:32:34 -05:00
Dan Funk 037692f42b
Merge pull request #422 from sartography/chore/group-repeating-validation-536
Fixes #536 - Group + Repeating property validation
2021-11-10 15:28:04 -05:00
Dan Funk e764bf937d
Merge pull request #421 from sartography/bug/validation_of_enum_label_failing_in_sub_workflows
Validation was failing for enum_label() expressions when called withi…
2021-11-10 15:26:03 -05:00
Dan Funk 81f8aed68b
Merge pull request #420 from sartography/drop-tasklog-on-delete
Delete Task log model when deleting a study
2021-11-10 15:20:11 -05:00
Dan Funk 84f364ce37
Merge branch 'dev' into chore/view-as-382 2021-11-10 15:16:20 -05:00
alicia pritchett accdd281fa Fixes #536 - Group + Repeating property validation
For now, we should not allow both group and repeat properties on a field together.
2021-11-09 13:21:44 -05:00
mike cullerton 5cf742d955 remove unused import 2021-11-09 13:07:01 -05:00
Dan d1eae3c15a Validation was failing for enum_label() expressions when called within a sub-process. Possible (but unlikely) that this would occur outside validation. 2021-11-09 12:55:06 -05:00
alicia pritchett aa1ba59bb1 Delete Task log model when deleting a study
just a minor fix
2021-11-09 10:42:47 -05:00
mike cullerton b193f56f35 Minor cleanup for readability. 2021-11-08 10:13:07 -05:00
mike cullerton 6f09b0d7dd Added comment to _is_valid_study.
Fixed get_required_docs. The data returned for get_required_dcs from UVA PB was *very* different than what we had.
2021-11-05 14:37:41 -04:00
mike cullerton d186b24de3 UVA PB returns the info in a list. We want the dictionary in the list 2021-11-05 14:26:21 -04:00
mike cullerton 271d4da5ff Merge branch 'dev' into test-protocol-builder-519 2021-11-05 10:29:20 -04:00
mike cullerton 6d548c2a74 *** WIP ***
Committing to work on another ticket
There are TODOs in study_service
2021-11-05 09:59:14 -04:00
Dan 9376d3deaf Don't error out trying to send an error about invalid review types. 2021-11-04 13:32:57 -04:00
Dan Funk 3a36a48b88
Merge pull request #418 from sartography/convert-timestamp-499
Added ordered arguments to the get_localtime script #499
2021-11-03 14:28:57 -04:00
mike cullerton b03e596dcf One thing at a time; remove HSRNUMBER for now 2021-11-03 12:58:03 -04:00
mike cullerton 9c8ae36ba3 UVA IRB passes back `Q_COMPLETE` and `HSRNUMBER` 2021-11-03 12:40:43 -04:00
mike cullerton 7f163285c3 Test w/Alex's ID 2021-11-03 11:56:07 -04:00
mike cullerton 8be9a1968b configure logging 2021-11-03 11:21:39 -04:00
mike cullerton 50d4159168 info log didn't show up. Maybe debug? 2021-11-03 10:36:27 -04:00
mike cullerton 8b6c8f9518 Logging to troubleshoot API call 2021-11-03 10:14:11 -04:00
mike cullerton 1f9c80d70d Added ordered arguments to the get_localtime script
Modified the workflow so the first task is a form with booleans that allows me to test all the permutations.
Modified tests to cover all the permutations for calling the script
2021-11-03 08:36:24 -04:00
mike cullerton 47ead5ab45 Fixed validation bug.
There is no element documentation available in the task, so we mock up the email content.
2021-11-02 10:00:41 -04:00
Dan Funk 8a6c1e1b51
Merge pull request #416 from sartography/bug/fix-hide-518
Fixes validation for #518
2021-11-01 16:22:24 -04:00
Dan Funk a4f8e39546
Merge pull request #415 from sartography/upload-file-previous-name-514
Upload file previous name #514
2021-11-01 15:59:57 -04:00
Dan Funk c4f3a3ad0d
Merge pull request #413 from sartography/logging-script-513
Logging script #513
2021-11-01 15:41:38 -04:00
Dan Funk fb25404a90
Merge pull request #412 from sartography/remove-content-html-512
Remove content_html #512
2021-11-01 15:38:46 -04:00
alicia pritchett 1866e6bba9 Fixes validation for #518
Well really what this does is give every field a default value of None. what that does is allow you to use value expressions even without a given default value. this part in the backend fixes validation.
2021-11-01 14:35:30 -04:00
mike cullerton 7722b89faa If a file was archived, users could not update the file.
In some situations, this kept users from re-uploading files that were previously deleted.
We now allow an archived file to be updated and unarchived.
2021-10-29 11:52:27 -04:00
alicia pritchett 702b8eaed6 add ldap endpoint that doesnt require workflow info 2021-10-28 16:19:39 -04:00
mike cullerton 5e569b9167 Unused imports 2021-10-27 17:19:27 -04:00
mike cullerton 81bb0013c8 Doh 2021-10-27 17:15:49 -04:00
mike cullerton c76d8230c0 Cleaned up validation 2021-10-27 17:03:27 -04:00
mike cullerton 6322353c88 Scripts to retrieve logging information 2021-10-27 16:39:25 -04:00
mike cullerton c61fad752f Bug fix 2021-10-27 16:38:36 -04:00
mike cullerton e783da00af Script to add a log message from a task.
Also added `*args` to the definitions for `do_task` and `do_task_validate_only` to the main script file. (These are the methods we overwrite in scripts.)
2021-10-27 12:21:38 -04:00
mike cullerton b0c479420d New task_log model with schema, and migration 2021-10-27 12:19:09 -04:00
mike cullerton 7090a22a23 Remove content_html from the data we return from the email and get_email_data scripts 2021-10-26 16:28:50 -04:00
mike cullerton 56c360da2f Merge branch 'dev' into convert-timestamp-499 2021-10-26 15:40:05 -04:00
mike cullerton b252d11eb5 Merge branch 'convert-timestamp-499' of https://github.com/sartography/cr-connect-workflow into convert-timestamp-499
# Conflicts:
#	crc/scripts/email.py
2021-10-26 15:39:38 -04:00
mike cullerton a65c104a0b To validate get_email_data 2021-10-26 15:27:24 -04:00
Dan e0d1f63c08 Fix an issue with validation where we didn't properly parse dot notation in fields. 2021-10-26 14:48:06 -04:00
Mike Cullerton 45fd317dc6
Merge branch 'dev' into convert-timestamp-499 2021-10-26 14:35:33 -04:00
mike cullerton f88aba1db0 Cleanup validation for get_locatime.
Make sure we send the same type of values back for validation.
2021-10-26 14:29:38 -04:00
Dan 1e1da2292b fixing a stupid mistake. 2021-10-26 13:36:38 -04:00
Dan d2799a758e Merge branch 'refactor/enums_as_key_value' into dev 2021-10-26 13:02:36 -04:00
Dan d0446cbc8a A quick fix to enum_label script. 2021-10-26 12:59:43 -04:00
alicia pritchett 7959f8ca3f
Merge pull request #405 from sartography/refactor/enums_as_key_value
Death to enumerated dictionaries
2021-10-25 15:17:17 -04:00
mike cullerton a7fcaac5ef Better messaging for the configurators.
We were generating 500 errors here
2021-10-22 12:53:26 -04:00
mike cullerton 7e3c47f8bf Added timestamp, and now return a schema just like the do_task method 2021-10-22 12:52:43 -04:00
Dan Funk 61e51e736f
Merge pull request #408 from sartography/jinja-complete-template-508
Jinja complete template #508
2021-10-21 14:22:00 -04:00
Dan Funk 36d30f23a1
Merge pull request #407 from sartography/jinja-include-403
Jinja include #403
2021-10-21 14:20:04 -04:00
Dan Funk 2ef03b0c79
Merge pull request #406 from sartography/convert-timestamp-499
Convert timestamp #499
2021-10-21 14:12:59 -04:00
Dan 84ce24243f add an enum_label script that will return the label given a value selection. 2021-10-21 13:57:49 -04:00
mike cullerton 1220f7bef8 Allow embedded templates in Word documents 2021-10-21 13:37:13 -04:00
mike cullerton 1671caacec Use the new JinjaService 2021-10-21 10:30:42 -04:00
mike cullerton 3619240bae Move the parts for using Word documents as Jinja templates into JinjaService 2021-10-21 10:29:56 -04:00
mike cullerton 3291ea8cb0 Unused imports 2021-10-20 14:04:45 -04:00
mike cullerton 073875aa51 Put this back the way it was 2021-10-20 13:56:09 -04:00
mike cullerton 62bf7c50bb Move to new branch 2021-10-20 13:48:20 -04:00
mike cullerton 8fd55565a4 Move changes to another branch 2021-10-20 13:11:06 -04:00
mike cullerton 7d48fa6b31 The get_localtime script now returns a datetime object instead of a string.
Validation also returns a datetime object instead of boolean
2021-10-20 12:15:45 -04:00
mike cullerton 45e119a435 Changed validation to return an email_model, so it can be used in further validation 2021-10-20 12:14:16 -04:00
mike cullerton e707783cea *** WIP ***
committing changes to work on another ticket.
Still need to figure out the complete_template piece
2021-10-20 09:21:45 -04:00
Dan 1c84bd9f1b Merge branch 'dev' into refactor/enums_as_key_value 2021-10-19 12:02:45 -04:00
Dan 5429e7da7d All enumerated lists used in web forms should contain a single value, not a dictionary of value/labels.
Removing the spreadsheet.value.column and data.value.column so we just have value.column for both.
Improving the __str__ function in the ApiError class, to make debugging a little easier.
Adding a "validate_all" flask command, to help us track down any issues with current workflows in production (use this in concert with sync_with_testing)
Fixed logs of tests.
removed fact_runner.py, a very early and crufty bit of code.
2021-10-19 10:13:43 -04:00
mike cullerton 1c02928d04 Merge branch 'dev' into jinja-include-403 2021-10-19 10:09:18 -04:00
Dan Funk afd983e7f5
Merge pull request #404 from sartography/email-attachment-error-503
Email attachment error #503
2021-10-19 09:51:15 -04:00
Dan Funk 8415ef9776
Merge pull request #402 from sartography/convert-timestamp-499
Convert timestamp #499
2021-10-19 09:50:10 -04:00
Dan Funk ee839a85ed
Merge pull request #401 from sartography/email-cleanup-498
Email cleanup #498
2021-10-19 08:59:48 -04:00
Dan Funk e1b72c8edf
Merge pull request #380 from sartography/file-cleanup-466
File cleanup #466
2021-10-19 08:57:14 -04:00
mike cullerton d84625c51e Merge branch 'convert-timestamp-499' into email-attachment-error-503
# Conflicts:
#	tests/emails/test_email_script.py
2021-10-18 17:08:56 -04:00
mike cullerton 0122029e30 *** WIP ***
Migrating the complete_template script stuff to JinjaService.
Having trouble with the tools stuff.
Pulled back to spot where test pass using CompleteTemplate
2021-10-18 16:56:03 -04:00
mike cullerton da9b902c19 Removed old commented code 2021-10-18 16:10:30 -04:00
mike cullerton 8de05b8fb6 Don't process attachments if argument is None or ''
This can happen during workflow processing
2021-10-18 11:19:56 -04:00
mike cullerton f9856d68a9 complete_template works a little different.
It uses a Word doc as the Jinja template
Need to decide what to do about this case
2021-10-16 14:22:07 -04:00
mike cullerton 983c4104e1 We run the same basic Jinja code in 4 different contexts.
Now call the the Jinja service
2021-10-16 14:20:48 -04:00
mike cullerton de1c987c85 New service to create and render template with Jinja
Allows us to include Jinja templates within Jinja templates
2021-10-16 14:17:53 -04:00
mike cullerton c2c79bd014 Convert UTC datetime object to a different timezone.
JSON doesn't know about dates, so we have to return a string
2021-10-14 11:02:16 -04:00
mike cullerton 1ef063de37 Merge branch 'email-cleanup-498' into convert-timestamp-499 2021-10-13 15:50:01 -04:00
mike cullerton 8015d35424 Script to get localtime from a UTC datetime 2021-10-13 15:36:37 -04:00
mike cullerton 7a5de44e1d Merge branch 'dev' into email-cleanup-498 2021-10-13 12:40:58 -04:00
Dan Funk bfd931e854
Merge pull request #400 from sartography/bug/nav-order-420
one solution for the Parallel nav order problem
2021-10-13 12:11:07 -04:00
alicia pritchett 58e75a1c8f Change one condition to compare only user tasks, not non-user-tasks 2021-10-13 12:08:20 -04:00
mike cullerton 771019d9ca Clarify call to email service. We now use the words content and content_html 2021-10-13 12:05:08 -04:00
mike cullerton 3ae00d190d Raise error if we have a problem sending email.
This should be processed by Spiff ultimately.
2021-10-13 12:03:48 -04:00
mike cullerton dcb06f3753 Schema for returning email model 2021-10-13 11:42:01 -04:00
mike cullerton e72cf27fe3 Return email model from email script. 2021-10-13 11:41:44 -04:00
Dan Funk c5d8e20e74
Merge pull request #399 from sartography/chore/resource-files-461
Chore/resource files 461
2021-10-12 15:56:56 -04:00
Dan Funk 5d5256df3a
Merge pull request #398 from sartography/bug/422_value_expression_enum
When dealing with enum default values, assure that we are looking at …
2021-10-12 15:56:25 -04:00
Dan Funk 6428e4ab0a
Merge pull request #397 from sartography/email-data-script-487
Email data script #487
2021-10-12 15:55:48 -04:00
Dan Funk dc07d42a9c
Merge pull request #395 from sartography/email-format-489
Email format #489
2021-10-12 15:51:57 -04:00
alicia pritchett 924e66ff45 remove blank line 2021-10-12 15:46:07 -04:00
Dan 5706fb3ad3 Don't error out here until we decide if we are going to fully refactor emums or leave as is. 2021-10-12 14:32:51 -04:00
alicia pritchett 40b5bf3afa Adds a POST for reference file. and a cool test 2021-10-12 14:29:15 -04:00
Dan 00e0bd5dd2 When dealing with enum default values, assure that we are looking at the '.value' attribute, not at the value itself.
Minor change to front end as well, please see companion ticket in the sartography_libraries.
2021-10-12 14:11:00 -04:00
mike cullerton 32aa1fba85 Change workflow_id to workflow_spec_id
We can use workflow_spec_id along with study_id to get a group of emails
2021-10-12 13:44:36 -04:00
mike cullerton 63df614f41 Change workflow_id to workflow_spec_id 2021-10-12 13:43:29 -04:00
mike cullerton 699fc7daac Change column in email table from workflow_id to workflow_spec_id 2021-10-12 13:42:11 -04:00
alicia pritchett 8b5686ce40 wip 2021-10-12 09:46:22 -04:00
alicia pritchett 1ef18f23aa one solution for the Parallel nav order problem 2021-10-11 11:50:03 -04:00
mike cullerton 5df8f127c7 Fix email formatting.
Markdown was swallowing the carriage returns.
We use the nl2br extension now.
2021-10-08 11:26:30 -04:00
Dan Funk b0a6af8d5e
Merge pull request #392 from sartography/email-data-script-487
Email data script #487
2021-10-07 14:52:31 -04:00
Dan fdce91507c Improve the warning messages that come back when running the master workflow spec. 2021-10-07 14:43:38 -04:00
mike cullerton 24932072dc Merge branch 'dev' into email-data-script-487 2021-10-07 12:30:13 -04:00
Dan Funk a39e0ba219
Merge pull request #390 from sartography/varchar-category-id-483
Varchar category id #483
2021-10-07 12:23:56 -04:00
mike cullerton 826b98a6ea Can't use workflow_id, because that conflicts with the id of the current workflow (that we pass in to every script) 2021-10-07 12:10:37 -04:00
Dan 548c35a4a3 Merge branch 'dev' into varchar-category-id-483 2021-10-07 11:35:10 -04:00
mike cullerton 10abf51f70 Added workflow_spec_id to WorkflowMetadata model, because the id is the workflow id, not the workflow_spec id.
Then, we use workflow_spec_id in StudyService when looking for workflow status.
2021-10-07 10:02:13 -04:00
mike cullerton 42346cf01e New get_email_data script. 2021-10-07 09:22:30 -04:00
mike cullerton be066b7d59 Add cc, bcc, and workflow_id to the email record, for reporting 2021-10-07 09:22:05 -04:00
mike cullerton 7551b99386 Add workflow_id to email_service call, for reporting
We now return the ID of the email model to the configurator, so they can track it.
2021-10-07 09:20:53 -04:00
mike cullerton dab233a07a Add columns to email model for reporting
Add Schema for email model
2021-10-07 09:19:37 -04:00
alicia pritchett 7b6beae9c1 fixes frontend bailing out
workflow id is workflow id
2021-10-06 14:33:09 -04:00
Dan 84680ea846 Fixing multiple issues that came out of Study Info, as we debugged issue #474 related to navigating back to a previous task.
There was a problem with the python script engine as well that wasn't handling the de-serialize properly and didn't correctly pick back up on the script engine, and the renaming of methods in PythonScriptEngine created some conflicts with the way we override functions.
We were not handling ldap looks up efficiently, and this was also breaking in Study Info.

Finally we had a bug in SpiffWorkflow that did not allow us to reset back to the previous task in some cases where nested call activities happen far later in the process and are currently active when the reset is created.
2021-10-06 12:17:57 -04:00
mike cullerton 572ca1db6b Fixes for backend code after removing `name` column from `workflow_spec` and `workflow_spec_category` tables 2021-10-05 14:17:41 -04:00
mike cullerton fcf538ca92 remove `name` column from workflow_spec and workflow_spec_category 2021-10-05 13:10:36 -04:00
Dan b02731df17 Add some additional checks in the workflow service so we assure the data we are creating during validation can be serialized and deserialized just as it would be through the API. (Was hanging us up on dates)
Assure that if we generate a default value for a date in the task data, it is stored as an ISO String.

remove any unserializable data from the task_data when an error is encountered, rather than just dropping all the task_data. This case seems to happen a lot and it leaves us with nothing to go on.
2021-10-04 15:07:47 -04:00
Dan 448b7b2773 respect proxy configurations. 2021-10-01 15:35:22 -04:00
Dan c3995bfc3e Another try at getting the url correct. This paired with an additional setting on the server maybe. 2021-10-01 14:25:00 -04:00
Dan 5924ee48f4 One more try at getting the currect url. 2021-09-30 16:56:27 -04:00
mike cullerton 5bf7bf3e2e Bug fix for adding master workflow to validation
We now check that a workflow is in the status dictionary before looking up its status.
2021-09-30 15:48:57 -04:00