Workflows Syntax
Workflows Manager implements both *.yaml
and *.json
file formats for defining workflows. The following sections
describe the structure of each file format.
parameters
¶
Required | Type | Default | Description |
---|---|---|---|
No | array | Parameters section allows to define top-level parameters that will be propagated to all workflows. See also workflow-level parameters and step-level for more details. |
Example
parameters[*].name
¶
Required | Type | Default | Description |
---|---|---|---|
Yes | string | Name of the parameter. |
Example
parameters[*].value
¶
Required | Type | Default | Description |
---|---|---|---|
No | string | integer | number | boolean | array | object | Value of the parameter. Can be omitted, if from_context has been provided. This attribute supports templating, you could inject value from another parameter using {variable_name} syntax. |
Example
{
"parameters": [
{
"name": "string_parameter",
"value": "Example value."
},
{
"name": "integer_parameter",
"value": 123
},
{
"name": "float_parameter",
"value": 123.456
},
{
"name": "boolean_parameter",
"value": true
},
{
"name": "list_parameter",
"value": ["item1", "item2"]
},
{
"name": "dictionary_parameter",
"value": {
"key1": "value1",
"key2": "value2"
}
}
]
}
parameters[*].from_context
¶
Required | Type | Default | Description |
---|---|---|---|
No | string | Name of the context variable to get the value from. Can be omitted, if value has been provided. If both value and from_context are provided, then value works as default value when from_context variable has not been found. |
Example
workflows
¶
Required | Type | Default | Description |
---|---|---|---|
Yes | object | Workflows section allows to define multiple workflows, each containing a list of steps. |
Example
workflows.<workflow>
¶
Required | Type | Default | Description |
---|---|---|---|
Yes | object | Workflow object that contains workflow's steps and optional parameters. |
Example
workflows.<workflow>.parameters
¶
Required | Type | Default | Description |
---|---|---|---|
No | array | Parameters section allows to define workflow-specific parameters that will override top-level parameters. See also top-level parameters and step-level parameters for more details. |
Example
workflows.<workflow>.steps
¶
Required | Type | Default | Description |
---|---|---|---|
Yes | array | List of steps that will be executed in the order they are defined. |
Example
workflows.<workflow>.steps[*].name
¶
Required | Type | Default | Description |
---|---|---|---|
Yes | string | Name of the step. It must be unique within the workflow scope. This attribute supports templating, you could inject value from another parameter using {variable_name} syntax. |
Example
workflows.<workflow>.steps[*].step
¶
Required | Type | Default | Description |
---|---|---|---|
Yes | string | Name of the step registered in the code that will be executed. It is required for normal type. This attribute supports templating, you could inject value from another parameter using {variable_name} syntax. |
Example
workflows.<workflow>.steps[*].type
¶
Required | Type | Default | Description |
---|---|---|---|
No | string | normal | Type of the step. It can be either normal , workflow , or parallel .
|
Example
workflows.<workflow>.steps[*].workflow
¶
Required | Type | Default | Description |
---|---|---|---|
No | string | Name of the workflow, it shall exist in the workflows file. It is required for workflow type. This attribute supports templating, you could inject value from another parameter using {variable_name} syntax. |
Example
workflows.<workflow>.steps[*].parallels
¶
Required | Type | Default | Description |
---|---|---|---|
No | array | List of steps that will be executed in parallel. It is required for parallel type. Refer to workflows.<workflow>.steps[*] to see full list of supported parameters for the parallel step. |
Example
workflows.<workflow>.steps[*].capture_stdout
¶
Required | Type | Default | Description |
---|---|---|---|
No | string | false | The flag used to specify whether to capture standard output stream into step information. |
Example
workflows.<workflow>.steps[*].capture_stderr
¶
Required | Type | Default | Description |
---|---|---|---|
No | string | false | The flag used to specify whether to capture standard error stream into step information. |
Example
workflows.<workflow>.steps[*].parameters
¶
Required | Type | Default | Description |
---|---|---|---|
No | array | Parameters section allows to define step-specific parameters that will override workflow-level and top-level parameters. See also workflow-level parameters and top-level parameters for more details. |
Example
workflows.<workflow>.steps[*].stop_on_error
¶
Required | Type | Default | Description |
---|---|---|---|
No | string | false | The flag used to specify whether to stop the workflow execution if the step fails. |