Contains the data to specify the order of steps in a pipeline.

interface IPipelineStepOrder<Name> {
    decorates?: PipelineStepName;
    dependencies: readonly PipelineStepName[];
    executed: PipelineStepStage;
    name: Name;
}

Type Parameters

Hierarchy (view full)

Hierarchy-Diagram

UML class diagram of IPipelineStepOrder

Properties

decorates?: PipelineStepName

This is similar to dependencies, but is used to say that a given step decorates another one. This imbues two requirements: The step must take the output of the decorated step as input, and produce the same output as the decorated step.

If so, it is ensured that this step is executed after the step it decorates, but before any step that depends on it.

dependencies: readonly PipelineStepName[]

Give the names of other steps this one requires to be completed as a prerequisite (e.g., to gain access to their input). Does not have to be transitive, this will be checked by the scheduler of the pipeline.

name: Name

Name of the respective step, it does not have to be unique in general but only unique per-pipeline. In other words, you can have multiple steps with a name like parse as long as you use only one of them in a given pipeline. This is, because these names are required in the IPipelineStep#dependencies field to refer to other steps this one relies on.