Merge remote-tracking branch 'origin/main' into feature/permissions2
This commit is contained in:
commit
1fd8fc7896
|
@ -1,10 +1,9 @@
|
|||
"""Grabs tickets from csv and makes process instances."""
|
||||
import csv
|
||||
import os
|
||||
|
||||
from flask_bpmn.models.db import db
|
||||
|
||||
from spiffworkflow_backend import create_app
|
||||
from spiffworkflow_backend import get_hacked_up_app_for_script
|
||||
from spiffworkflow_backend.models.process_instance import ProcessInstanceModel
|
||||
from spiffworkflow_backend.models.user import UserModel
|
||||
from spiffworkflow_backend.services.process_instance_processor import (
|
||||
|
@ -26,10 +25,7 @@ def print_process_instance_count(process_model_identifier_ticket: str) -> None:
|
|||
|
||||
def main():
|
||||
"""Main."""
|
||||
os.environ["SPIFFWORKFLOW_BACKEND_ENV"] = "development"
|
||||
flask_env_key = "FLASK_SESSION_SECRET_KEY"
|
||||
os.environ[flask_env_key] = "whatevs"
|
||||
app = create_app()
|
||||
app = get_hacked_up_app_for_script()
|
||||
with app.app_context():
|
||||
|
||||
process_model_identifier_ticket = "ticket"
|
||||
|
|
|
@ -1,94 +1,13 @@
|
|||
"""Grabs tickets from csv and makes process instances."""
|
||||
import os
|
||||
|
||||
from spiffworkflow_backend import create_app
|
||||
from spiffworkflow_backend.services.process_model_service import ProcessModelService
|
||||
from spiffworkflow_backend.services.spec_file_service import SpecFileService
|
||||
|
||||
# from lxml.etree import Element as EtreeElement
|
||||
from spiffworkflow_backend import get_hacked_up_app_for_script
|
||||
from spiffworkflow_backend.services.data_setup_service import DataSetupService
|
||||
|
||||
|
||||
def main():
|
||||
def main() -> None:
|
||||
"""Main."""
|
||||
os.environ["SPIFFWORKFLOW_BACKEND_ENV"] = "development"
|
||||
flask_env_key = "FLASK_SESSION_SECRET_KEY"
|
||||
os.environ[flask_env_key] = "whatevs"
|
||||
if "BPMN_SPEC_ABSOLUTE_DIR" not in os.environ:
|
||||
home = os.environ["HOME"]
|
||||
full_process_model_path = (
|
||||
f"{home}/projects/github/sartography/sample-process-models"
|
||||
)
|
||||
if os.path.isdir(full_process_model_path):
|
||||
os.environ["BPMN_SPEC_ABSOLUTE_DIR"] = full_process_model_path
|
||||
else:
|
||||
raise Exception(f"Could not find {full_process_model_path}")
|
||||
app = create_app()
|
||||
app = get_hacked_up_app_for_script()
|
||||
with app.app_context():
|
||||
no_primary = []
|
||||
failing_process_models = []
|
||||
process_models = ProcessModelService().get_process_models()
|
||||
for process_model in process_models:
|
||||
if process_model.primary_file_name:
|
||||
|
||||
bpmn_xml_file_contents = SpecFileService.get_data(
|
||||
process_model, process_model.primary_file_name
|
||||
)
|
||||
bad_files = [
|
||||
"B.1.0.bpmn",
|
||||
"C.1.0.bpmn",
|
||||
"C.2.0.bpmn",
|
||||
"C.6.0.bpmn",
|
||||
"TC-5.1.bpmn",
|
||||
]
|
||||
if process_model.primary_file_name in bad_files:
|
||||
continue
|
||||
print(f"primary_file_name: {process_model.primary_file_name}")
|
||||
try:
|
||||
SpecFileService.update_file(
|
||||
process_model,
|
||||
process_model.primary_file_name,
|
||||
bpmn_xml_file_contents,
|
||||
)
|
||||
except Exception as ex:
|
||||
failing_process_models.append(
|
||||
(process_model.primary_file_name, str(ex))
|
||||
)
|
||||
# files = SpecFileService.get_files(
|
||||
# process_model, extension_filter="bpmn"
|
||||
# )
|
||||
# bpmn_etree_element: EtreeElement = (
|
||||
# SpecFileService.get_etree_element_from_binary_data(
|
||||
# bpmn_xml_file_contents, process_model.primary_file_name
|
||||
# )
|
||||
# )
|
||||
# if len(files) == 1:
|
||||
# try:
|
||||
# new_bpmn_process_identifier = (
|
||||
# SpecFileService.get_bpmn_process_identifier(
|
||||
# bpmn_etree_element
|
||||
# )
|
||||
# )
|
||||
# if (
|
||||
# process_model.primary_process_id
|
||||
# != new_bpmn_process_identifier
|
||||
# ):
|
||||
# print(
|
||||
# "primary_process_id: ", process_model.primary_process_id
|
||||
# )
|
||||
# # attributes_to_update = {
|
||||
# # "primary_process_id": new_bpmn_process_identifier
|
||||
# # }
|
||||
# # ProcessModelService().update_spec(
|
||||
# # process_model, attributes_to_update
|
||||
# # )
|
||||
# # except Exception as exception:
|
||||
# except Exception:
|
||||
# print(f"BAD ONE: {process_model.id}")
|
||||
# # raise exception
|
||||
else:
|
||||
no_primary.append(process_model)
|
||||
# for bpmn in no_primary:
|
||||
# print(bpmn)
|
||||
failing_process_models = DataSetupService.save_all()
|
||||
for bpmn_errors in failing_process_models:
|
||||
print(bpmn_errors)
|
||||
if len(failing_process_models) > 0:
|
||||
|
|
|
@ -116,6 +116,24 @@ def create_app() -> flask.app.Flask:
|
|||
return app # type: ignore
|
||||
|
||||
|
||||
def get_hacked_up_app_for_script() -> flask.app.Flask:
|
||||
"""Get_hacked_up_app_for_script."""
|
||||
os.environ["SPIFFWORKFLOW_BACKEND_ENV"] = "development"
|
||||
flask_env_key = "FLASK_SESSION_SECRET_KEY"
|
||||
os.environ[flask_env_key] = "whatevs"
|
||||
if "BPMN_SPEC_ABSOLUTE_DIR" not in os.environ:
|
||||
home = os.environ["HOME"]
|
||||
full_process_model_path = (
|
||||
f"{home}/projects/github/sartography/sample-process-models"
|
||||
)
|
||||
if os.path.isdir(full_process_model_path):
|
||||
os.environ["BPMN_SPEC_ABSOLUTE_DIR"] = full_process_model_path
|
||||
else:
|
||||
raise Exception(f"Could not find {full_process_model_path}")
|
||||
app = create_app()
|
||||
return app
|
||||
|
||||
|
||||
def configure_sentry(app: flask.app.Flask) -> None:
|
||||
"""Configure_sentry."""
|
||||
import sentry_sdk
|
||||
|
|
|
@ -8,9 +8,9 @@ servers:
|
|||
- url: http://localhost:5000/v1.0
|
||||
security:
|
||||
- jwt: ["secret"]
|
||||
- oAuth2AuthCode:
|
||||
- read_email
|
||||
- uid
|
||||
# - oAuth2AuthCode:
|
||||
# - read_email
|
||||
# - uid
|
||||
|
||||
paths:
|
||||
/login:
|
||||
|
|
|
@ -0,0 +1,82 @@
|
|||
"""Data_setup_service."""
|
||||
from spiffworkflow_backend.services.process_model_service import ProcessModelService
|
||||
from spiffworkflow_backend.services.spec_file_service import SpecFileService
|
||||
|
||||
|
||||
class DataSetupService:
|
||||
"""DataSetupService."""
|
||||
|
||||
@staticmethod
|
||||
def save_all() -> list:
|
||||
"""Save_all."""
|
||||
failing_process_models = []
|
||||
process_models = ProcessModelService().get_process_models()
|
||||
for process_model in process_models:
|
||||
if process_model.primary_file_name:
|
||||
|
||||
bpmn_xml_file_contents = SpecFileService.get_data(
|
||||
process_model, process_model.primary_file_name
|
||||
)
|
||||
bad_files = [
|
||||
"B.1.0.bpmn",
|
||||
"C.1.0.bpmn",
|
||||
"C.2.0.bpmn",
|
||||
"C.6.0.bpmn",
|
||||
"TC-5.1.bpmn",
|
||||
]
|
||||
if process_model.primary_file_name in bad_files:
|
||||
continue
|
||||
print(f"primary_file_name: {process_model.primary_file_name}")
|
||||
try:
|
||||
SpecFileService.update_file(
|
||||
process_model,
|
||||
process_model.primary_file_name,
|
||||
bpmn_xml_file_contents,
|
||||
)
|
||||
except Exception as ex:
|
||||
failing_process_models.append(
|
||||
(
|
||||
f"{process_model.process_group_id}/{process_model.id}/{process_model.primary_file_name}",
|
||||
str(ex),
|
||||
)
|
||||
)
|
||||
# files = SpecFileService.get_files(
|
||||
# process_model, extension_filter="bpmn"
|
||||
# )
|
||||
# bpmn_etree_element: EtreeElement = (
|
||||
# SpecFileService.get_etree_element_from_binary_data(
|
||||
# bpmn_xml_file_contents, process_model.primary_file_name
|
||||
# )
|
||||
# )
|
||||
# if len(files) == 1:
|
||||
# try:
|
||||
# new_bpmn_process_identifier = (
|
||||
# SpecFileService.get_bpmn_process_identifier(
|
||||
# bpmn_etree_element
|
||||
# )
|
||||
# )
|
||||
# if (
|
||||
# process_model.primary_process_id
|
||||
# != new_bpmn_process_identifier
|
||||
# ):
|
||||
# print(
|
||||
# "primary_process_id: ", process_model.primary_process_id
|
||||
# )
|
||||
# # attributes_to_update = {
|
||||
# # "primary_process_id": new_bpmn_process_identifier
|
||||
# # }
|
||||
# # ProcessModelService().update_spec(
|
||||
# # process_model, attributes_to_update
|
||||
# # )
|
||||
# # except Exception as exception:
|
||||
# except Exception:
|
||||
# print(f"BAD ONE: {process_model.id}")
|
||||
# # raise exception
|
||||
else:
|
||||
failing_process_models.append(
|
||||
(
|
||||
f"{process_model.process_group_id}/{process_model.id}",
|
||||
"primary_file_name not set",
|
||||
)
|
||||
)
|
||||
return failing_process_models
|
Loading…
Reference in New Issue