Interface: WorkflowDefinition<I, C>
An interface that includes everything that makes up a workflow.
Type Parameters
| Type Parameter | Default type |
|---|---|
I extends readonly WorkflowArgument[] | any |
C | any |
Properties
checklistDescription()?
optionalchecklistDescription: (context) =>string
Description that will be printed when the workflow itself is part of a checklist. Experimental! Still need to experiment with workflows in workflows.
Parameters
| Parameter | Type |
|---|---|
context | C |
Returns
string
context()
context: (
arg) =>C
The context specific to this workflow, generated from the input and available to use in each step.
Parameters
| Parameter | Type |
|---|---|
arg | { input: Omit<CreateArgsTypeBase<I>, FlagKeys<I>> & Partial<Pick<CreateArgsTypeBase<I>, FlagKeys<I>>> & object; } |
arg.input | Omit<CreateArgsTypeBase<I>, FlagKeys<I>> & Partial<Pick<CreateArgsTypeBase<I>, FlagKeys<I>>> & object |
Returns
C
description
description:
string
Description of the workflow which will be shown in the CLI tool.
docFiles
docFiles:
Record<string,string>>
A map of ids to doc file absolute paths which will be referenced as part of the workflow.
id
id:
string
Unique id for the workflow, for invoking it with the CLI tool.
input
input:
I
The input specific to this workflow.
sourceUrl
sourceUrl:
string
The source URL of the workflow. Set to import.meta.url.
steps
steps:
WorkflowStep<C,AnyStateMachine>>[]
An array of steps to be executed in the workflow. Each step is a state machine, and a function which takes the context and returns the input for the state machine.
templateFiles
templateFiles:
Record<string,string>>
A map of ids to template file absolute paths which will be copied and updated as part of the workflow.
versionControl?
optionalversionControl:object
Configure version control for the workflow. Right now, just provide paths which the workflow will consider safe to change as part of the workflow.
allowPaths?
optionalallowPaths:string[] | (__namedParameters) =>string[]
commitEachStep?
optionalcommitEachStep:boolean