We are constantly running into the need to conditionally execute steps/commands based on conditions that can't be evaluated ahead of time (and so can't be constructed in the dynamic workflow, which we are using).
The most frequent case is
save_cache
(we frequently spend ~60 seconds saving a large cache that is identical to the one that was loaded), but it would simplify our build substantially if we could supply a
conditional_command
parameter to a step and have it evaluated. Or if we could write a command that, in one step calculate a decision and then decide to skip the rest of the _command_ (not the job).
I see prior suggestions along these lines that were told to use dynamic workflows, but we're one of the most thorough users of that feature, and it doesn't suffice here.