Allow a list of tasks to fail without stopping the execution of downstream tasks in the flow.
If any child task of the AllowFailure
task fails, the flow will stop executing this block of tasks (i.e. the next tasks in the AllowFailure
block will no longer be executed), but the flow execution of the tasks, following the AllowFailure
task, will continue.
yaml
type: "io.kestra.plugin.core.flow.AllowFailure"
yaml
id: allow_failure
namespace: company.team
tasks:
- id: sequential
type: io.kestra.plugin.core.flow.AllowFailure
tasks:
- id: ko
type: io.kestra.plugin.scripts.shell.Commands
commands:
- 'exit 1'
- id: last
type: io.kestra.plugin.core.debug.Return
format: "{{ task.id }} > {{ taskrun.startDate }}"
Allow failure of a group of tasks
yaml
id: allow-failure-demo
namespace: company.team
tasks:
- id: allow_failure
type: io.kestra.plugin.core.flow.AllowFailure
tasks:
- id: fail_silently
type: io.kestra.plugin.scripts.shell.Commands
taskRunner:
type: io.kestra.plugin.core.runner.Process
commands:
- exit 1
- id: print_to_console
type: io.kestra.plugin.scripts.shell.Commands
taskRunner:
type: io.kestra.plugin.core.runner.Process
commands:
- echo "this will run since previous failure was allowed ✅"