diff --git a/templates/create_workspace_client.json.j2 b/templates/create_workspace_client.json.j2 index 7563208..7625715 100644 --- a/templates/create_workspace_client.json.j2 +++ b/templates/create_workspace_client.json.j2 @@ -223,6 +223,32 @@ } ] } + }, + { + "name": "LAMBDA_TASK", + "taskReferenceName": "build_tasks_to_add_ws_client_to_all_contexts", + "type": "LAMBDA", + "inputParameters": { + "context_list" : "${workflow.input.context_list}", + "client_id" : "${workflow.input.client_id}", + "scriptExpression": "inputs={},tasks=[];for(var i=0;i<$.context_list.length;i++)c=$.context_list[i],tasks.push({name:'sub_workflow_task',type:'SUB_WORKFLOW',taskReferenceName:'add_workspace_client_to_context_'+i, subWorkflowParam:{ name:'add_workspace_client_to_context'}}),inputs['add_workspace_client_to_context_'+i]={client_id : $.client_id, context: c};return {tasks:Java.to(tasks,'java.util.Map[]'),inputs:inputs};" + } + }, + { + "name" : "fork_dynamic", + "type" : "FORK_JOIN_DYNAMIC", + "taskReferenceName" : "parallel_build_tasks_to_add_ws_client_to_all_contexts", + "inputParameters" : { + "tasks" : "${build_tasks_to_add_ws_client_to_all_contexts.output.result.tasks}", + "inputs" : "${build_tasks_to_add_ws_client_to_all_contexts.output.result.inputs}" + }, + "dynamicForkTasksParam": "tasks", + "dynamicForkTasksInputParamName": "inputs" + }, + { + "name" : "join", + "type" : "JOIN", + "taskReferenceName" : "join_build_tasks_to_add_ws_client_to_all_contexts" } ] }