SpecialistOff.NET / Вопросы / Статьи / Фрагменты кода / Резюме / Метки / Помощь / Файлы
НазадМетки: celery python workflow pipeline
Последовательные цепочки задач
#!/usr/bin/env python3
__author__ = 'RemiZOffAlex'
__email__ = 'remizoffalex@mail.ru'
from celery import chain, Signature
import tasks
# Задача
task1_arg1 = 1
task1_arg2 = 2
task2_arg1 = 3
task_list = [
Signature(
task = tasks.task1,
kwargs = {
"arg1": task1_arg1,
"arg2": task1_arg2
}
),
Signature(
task = tasks.task2,
kwargs = {'arg1': task2_arg1},
# По умолчанию результат каждой предыдущей задачи поступает
# в качестве первого аргумента каждой последующей.
# Параметр immutable меняет поведение и первый аргумент нужно задавать
# явно
immutable=True
)
]
task = chain(*task_list).apply_async()
print('task: {}'.format(task.id))