Планирование составной задачи с аргументами - PullRequest
0 голосов
/ 28 мая 2020

У меня есть эти две задачи, определенные в Spring Cloud Dataflow, для простоты я буду называть их просто first-task и second-task. Затем я определяю составную задачу:

task create --name my-composed-task --definition "first-task && second-task"

Теперь мне нужно запланировать эту задачу, но мне нужно, чтобы запланированная задача начиналась с двумя аргументами, допустим, это аргументы OBJECT_TYPES=1 и SKIP_EXTRA_STUFF=true . Поэтому я пытаюсь настроить свое расписание:

task schedule create --definitionName my-composed-task --name my-scheduled-task --expression '0 5 4 * ?' --arguments 'OBJECT_TYPES=1 SKIP_EXTRA_STUFF=true'

Но когда расписание запускается, вторая задача не выполняется, потому что эти аргументы являются обязательными. Я также попытался изменить определение расписания следующим образом:

task schedule create --definitionName my-composed-task --name my-scheduled-task --expression '0 5 4 * ?' --arguments "--composed-task-arguments='OBJECT_TYPES=1 SKIP_EXTRA_STUFF=true'"

, но все же аргументы не передаются через дочерние задачи. Может кто-нибудь сказать мне, что не так с этими определениями?

1 Ответ

0 голосов
/ 28 мая 2020

Для составных задач вы можете передавать аргументы дочерним задачам с помощью ключа свойства --composedTaskArguments. Например,

вы можете сделать что-то вроде этого:

task schedule create --definitionName my-composed-task --name my-scheduled-task --expression '0 5 4 * ?' --arguments "--composedTaskArguments=\"OBJECT_TYPES=1 SKIP_EXTRA_STUFF=true\""

Также обратите внимание, что значения, указанные --composedTaskArguments, передаются всем дочерним задачам. Возможность передавать аргументы в конкретную дочернюю задачу c составной задачи только что была добавлена ​​ в SCDF.

...