The If Wrapper stage can execute a list of stages depending on the result of a comparison. The stage will check inside intermediate for the field defined in check_field, and see if its value matches the one given in check_value, if this is true the stages stored in stages, otherwise if the list else_stages was provided, will execute.
This applies for all the stage functions process, post_process and get_ui_config
If Wrapper doesn't return value to the pipeline
Property | Description | Default | Type | Required |
---|---|---|---|---|
type | Stage class name | - | string | Yes |
enable | Enable stage for execution | true | boolean | No |
name | Name for this specific stage | "if" | string | No |
save_to_intermediate | If true, the result of the stage will be stored in the intermediate instead of the final section | false | boolean | No |
ui_only | Section specific for UI configuration that affects the process of the stage | object | No | |
halt_on_exception | Indicates if the pipeline should be interrupted in case of an exception | false | boolean | No |
stages | List of stages to be executed if the condition is true | - | array of BaseStage | Yes (minItems: 1) |
else_stages | List of stages to be executed if the condition is false | [] | array of BaseStage | No (minItems: 1) |
check_field | Key used in the JSON payload to validate whether the stage should be enabled or not | string | Yes | |
check_value | Field value used to compare with the value in the "check_field" to determine if the stage should be enabled | - | No |
_if = IfWrapperStage( name='if', check_field='flag', check_value=True, stages=[_search1], else_stages=[_search2] )