Skip to content

@openfabr/cdf / Exports / Orchestrator

Class: Orchestrator<IPC, GC, NC, CC, SC, RC>

Concrete class that orchestrates an infra provisioning run. It takes a project configuration, coupled with a package to generate baseline infra, and then augments it with custom code supplied by the project.

It should be used as-is. In rare occasions it can be extended to influence how the infra provisioning pipeline works - with caution.

Type parameters

Name Type
IPC extends InfraPlanConstructs
GC extends GeneralConfig
NC extends NetworkConfig
CC extends ComponentConfig
SC extends ServiceConfig
RC extends RelationConfig

Table of contents

Constructors

Properties

Methods

Constructors

constructor

new Orchestrator<IPC, GC, NC, CC, SC, RC>(infraConfig, packagePlanner, customModules)

Type parameters

Name Type
IPC extends InfraPlanConstructs
GC extends GeneralConfig
NC extends NetworkConfig
CC extends ComponentConfig
SC extends ServiceConfig
RC extends RelationConfig

Parameters

Name Type Description
infraConfig InfraConfig<GC, NC, CC, SC, RC> The project configuration in full.
packagePlanner Planner<IPC, GC, NC, CC, SC, RC> The planner offered by the package.
customModules Custom<IPC, GC, NC, CC, SC, RC>[] Custom code modules for the project.

Defined in

src/lib/orchestrator.ts:43

Properties

customModules

Readonly customModules: Custom<IPC, GC, NC, CC, SC, RC>[]

Custom code modules for the project.

Defined in

src/lib/orchestrator.ts:46


infraConfig

Readonly infraConfig: InfraConfig<GC, NC, CC, SC, RC>

The project configuration in full.

Defined in

src/lib/orchestrator.ts:44


packagePlanner

Readonly packagePlanner: Planner<IPC, GC, NC, CC, SC, RC>

The planner offered by the package.

Defined in

src/lib/orchestrator.ts:45

Methods

runIn

runIn(scope): Result<InfraPlanOutputs, PlanError>

Running the infra provisioning.

Parameters

Name Type Description
scope any Depending on the IaC runtime, it can be a stack object defined in AWS CDK and CDKTF, or absent for other runtime without the construct-based structure.

Returns

Result<InfraPlanOutputs, PlanError>

Result that encapsulates either outputs InfraPlanOutputs if successful, or error PlanError if failed.

Defined in

src/lib/orchestrator.ts:56