如何将参数从 scdf shell 传递给组合任务?

How to pass arguments to composed task from scdf shell?

我正在尝试通过 scdf shell 启动组合任务。参数未正确传递给子任务

组合任务定义:

composed-task --graph='app1 && app2'

从 shell 启动的命令:

task launch composed-task-name --arguments "--name=test"

参数在组合任务 jar 中而不是子任务中传递和执行并失败。在使用 Web UI 时,有一个名为 composed-task-arguments 的选项,它将参数识别为子任务的参数。

Web 中的组合任务定义 UI:

composed-task --graph='app1 && app2' --composed-task-arguments ='--name=test'

--组合任务参数在数据 shell 中无法识别。只有 --arguments 是有效的。如何仅将参数传递给数据 shell 中的子任务?

Launching a Composed Task 部分明确介绍了何时需要将属性和参数从 Shell 传递给子任务的场景。

特别是要将任意参数传递给子任务,您仍然必须使用 --arugments 属性,但值将通过 composed-task-arguments 属性。这是一个例子。

创建:

dataflow:>task create composed-task --definition "t1: timestamp && t2: timestamp"

发射:

dataflow:>task launch composed-task --arguments "--composed-task-arguments=foo=one bar=two"

通过此任务启动,t1t2 任务都应该在运行时收到 "foo=one" 和 "bar=two" 属性。