(
session,
project,
workflow,
name,
active,
time_window,
mode,
log,
member)
| 67 | |
| 68 | |
| 69 | def flow_update_core( |
| 70 | session, |
| 71 | project, |
| 72 | workflow, |
| 73 | name, |
| 74 | active, |
| 75 | time_window, |
| 76 | mode, |
| 77 | log, |
| 78 | member): |
| 79 | if mode == "ARCHIVE": |
| 80 | workflow.archived = True |
| 81 | workflow.active = False |
| 82 | remove_job_scheduling(workflow_id = workflow.id, project_id = workflow.project_id) |
| 83 | session.add(workflow) |
| 84 | |
| 85 | return log |
| 86 | |
| 87 | if mode == "UPDATE": |
| 88 | session.add(workflow) |
| 89 | |
| 90 | workflow.is_new = False |
| 91 | |
| 92 | workflow.name = name |
| 93 | workflow.active = active |
| 94 | if not workflow.active and workflow.has_time_trigger(session = session): |
| 95 | remove_job_scheduling(workflow_id = workflow.id, project_id = workflow.project_id) |
| 96 | else: |
| 97 | if workflow.has_time_trigger(session = session): |
| 98 | first_action = workflow.get_first_action(session = session) |
| 99 | add_job_scheduling(workflow_id = workflow.id, |
| 100 | project_id = workflow.project_id, |
| 101 | cron_expression = first_action.trigger_data.get('cron_expression', None)) |
| 102 | workflow.time_window = time_window |
| 103 | workflow.member_updated = member |
| 104 | |
| 105 | Workflow.update_string_id( |
| 106 | session = session, |
| 107 | workflow = workflow) |
| 108 | |
| 109 | log['info']['update'] = "Success" |
| 110 | |
| 111 | return log |
no test coverage detected