Dynamic Job Spec#

Tags: Basic, Design

A dynamic job spec is a subset of the entire workflow spec that defines a set of tasks, workflows, nodes, and output bindings that control how the job should assemble its outputs.

This spec is currently only supported as an intermediate step in running Dynamic Tasks.

Dynamic job spec in Protobuf#
 message DynamicJobSpec {
     repeated Node nodes = 1;
     int64 min_successes = 2;
     repeated Binding outputs = 3;

     repeated TaskTemplate tasks = 4;
     repeated WorkflowTemplate subworkflows = 5;
 }

Tasks#

Defines one or more Tasks that can then be referenced in the spec.

Subworkflows#

Defines zero or more Workflows that can then be referenced in the spec.

Nodes#

Defines one or more Nodes that can run in parallel to produce the final outputs of the spec.

Outputs#

Defines one or more binding that instructs engine on how to assemble the final outputs.