Better conditional step controls

Coming from GitHub Actions I would expect a predictable way to conditionally run a dependent step.

Something like continue_on_failure or more precise control via depends_on[0].allow_failure works fine in most cases but not for TIMED_OUT, CANCELLED and possibly others. This is extremely frustrating and non-obvious from its key nor the docs.

What do I see as a solution? Something like the status check functions (i.e. always, failure, cancelled and success) that are available in the in GitHub actions if block. This is clear and undeniable when these steps will run, where continue_on_failure leaves room for interpretation. These also have more granular control via the conclusion prop (e.g. steps.demo.conclusion == 'failure').

Hi! :wave:

Interesting … Thank you for your suggestions! We don’t have plans at the moment to do changes around conditionals, but we’ll revise this when we do (you made a good point :slight_smile:).


1 Like

Additional context I found, even attempting to use a wait step to wait for the TIMED_OUT job fails to run.

Seems to me the “Build will continue even if previous stage fails” message has a VERY strict definition for failed :disappointed: .