export function buildPipeline()

in core/rockefeller.ts [48:68]


export function buildPipeline(buildSchema: IPipelineSchema, componentDependencies?: IComponentDependencies) : IBuiltStage {
    if (arguments.length === 1) {
        const dependencies = initDependencies(buildSchema);
        dependencies.logger.info(`testUUID: ${dependencies.variables.managed.testUUID}`);
        return buildPipeline(buildSchema, dependencies);
    }
    const derivedDependencies = deriveDependencies(buildSchema, componentDependencies);
    if (!buildSchema.component || buildSchema.component === IComponentName.Stage) {
        return buildPipelineStage(buildSchema, derivedDependencies);
    }
    else if (buildSchema.component === IComponentName.Synchronizer) {
        return buildPipelineSynchronizer(buildSchema, derivedDependencies);
    }
    else if (buildSchema.component === IComponentName.Generator) {
        return buildPipelineGenerator(buildSchema, derivedDependencies);
    }
    else if (wrapperTemplates.some((w)=>(buildSchema.component === w.name))) {
        return buildPipelineWrapper(buildSchema, derivedDependencies);
    }
    throw error("Unsupported pipeline component in schema: ", buildSchema.component);
}