Workflow
Overview
user_code: com.finmars.standard-workflow:workflow-manager
payload: optional
Воркфлоу менеджер предназначен для запуска воркеров в требуемоем порядке с определенным payload.
Основной сценарий использования воркфлоу менеджера предназачен при отсутствии payload.
Сценарий его работы:
- Прочитать или создать файл
/states/global\_state\_manager.json
- Прочитать все json менеджеров в
/states/managers
- Прочитать статус выполнения каждого менеджера из поля "status" в соотетствующем json
- Распределить стейт файлы по статусам в виде словаря
{
"to-do": [],
"in-progress": [
"com.finmars.standard-workflow:workflow-manager-20240821095322.json"
],
"done": [
"com.finmars.standard-workflow:workflow-manager-20240724101635.json",
"com.finmars.standard-workflow:workflow-manager-20240724104102.json"
],
"paused": []
}
- Запустить логику обработки данных стейт-файловЛогика обработки global_state_manager.json
- Попытаться прочитать файл
global_state_manager.json
. Если нет, то создать его. - Прочитать список файлов из
/states/managers/
. - Распределить по статусам и сохранить в global_state_manager.json
- Если файла нет, то добавить в to_do
- Если в to-do, то сменить статус на in-progress
- Если файл есть, то обновить статус
- Прочитать содержимое файла из
in-progress
Логика обработки загруженного стейта файла менеджера