32
32
thread_resume_process ,
33
33
)
34
34
from orchestrator .types import BroadcastFunc
35
+ from orchestrator .utils .auth import Authorizer
35
36
from orchestrator .utils .json import json_dumps , json_loads
36
37
from orchestrator .workflow import ProcessStat , ProcessStatus , Success , runwf
37
38
from orchestrator .workflows import get_workflow
@@ -103,12 +104,12 @@ def start_process(process_id: UUID, workflow_key: str, state: dict[str, Any], us
103
104
else :
104
105
return process_id
105
106
106
- def resume_process (process_id : UUID , user_inputs : list [State ] | None , user : str ) -> UUID | None :
107
+ def resume_process (process_id : UUID , user_inputs : list [State ] | None , user : str , user_model : Authorizer | None = None ) -> UUID | None :
107
108
try :
108
109
process = _get_process (process_id )
109
110
ensure_correct_process_status (process_id , ProcessStatus .RESUMED )
110
111
process_id = thread_resume_process (
111
- process , user_inputs = user_inputs , user = user , broadcast_func = process_broadcast_fn
112
+ process , user_inputs = user_inputs , user = user , user_model = user_model , broadcast_func = process_broadcast_fn
112
113
)
113
114
except Exception as exc :
114
115
local_logger .error ("Worker failed to resume workflow" , process_id = process_id , details = str (exc ))
@@ -131,16 +132,16 @@ def new_workflow(process_id, workflow_key: str, user: str) -> UUID | None:
131
132
return start_process (process_id , workflow_key , state = state , user = user )
132
133
133
134
@celery_task (name = RESUME_TASK ) # type: ignore
134
- def resume_task (process_id : UUID , user : str ) -> UUID | None :
135
+ def resume_task (process_id : UUID , user : str , user_model : Authorizer | None = None ) -> UUID | None :
135
136
local_logger .info ("Resume task" , process_id = process_id )
136
137
state = retrieve_input_state (process_id , "user_input" ).input_state
137
- return resume_process (process_id , user_inputs = state , user = user )
138
+ return resume_process (process_id , user_inputs = state , user = user , user_model = user_model )
138
139
139
140
@celery_task (name = RESUME_WORKFLOW ) # type: ignore
140
- def resume_workflow (process_id : UUID , user : str ) -> UUID | None :
141
+ def resume_workflow (process_id : UUID , user : str , user_model : Authorizer | None = None ) -> UUID | None :
141
142
local_logger .info ("Resume workflow" , process_id = process_id )
142
143
state = retrieve_input_state (process_id , "user_input" ).input_state
143
- return resume_process (process_id , user_inputs = state , user = user )
144
+ return resume_process (process_id , user_inputs = state , user = user , user_model = user_model )
144
145
145
146
146
147
class CeleryJobWorkerStatus (WorkerStatus ):
0 commit comments