35 lines
896 B
Plaintext
35 lines
896 B
Plaintext
|
@startuml
|
||
|
|
||
|
participant main
|
||
|
participant manager
|
||
|
participant argo_builder
|
||
|
participant oc_catalog
|
||
|
|
||
|
activate main
|
||
|
|
||
|
main -> manager : startManager(list_schedules)
|
||
|
activate manager
|
||
|
|
||
|
loop while true
|
||
|
|
||
|
manager -> oc_catalog : get(/v1/schedule/) : \n @start time.Now() \n @end time.Now() + 1 hour
|
||
|
oc_catalog --> manager : json schedule workflow
|
||
|
manager -> manager : lock(list_workflows)
|
||
|
|
||
|
end
|
||
|
|
||
|
main -> manager : launch_exec(list_schedule)
|
||
|
|
||
|
loop while list_schedule[0].time < time.Now()
|
||
|
manager -> argo_builder : create_argo(workflow_name)
|
||
|
argo_builder -> oc_catalog : get(/v1/workflow) :\n @name workflow_name
|
||
|
oc_catalog --> argo_builder: workflow
|
||
|
argo_builder -> argo_builder: create_argo
|
||
|
argo_builder --> manager : true/false
|
||
|
|
||
|
alt true
|
||
|
manager -> manager : remove list_schedule[0]
|
||
|
end
|
||
|
end
|
||
|
|
||
|
@enduml
|