We deploy across a number of tenants and have found that if we have forgotten to setup a machine in the tenant with a role, a release is still marked successful even though a step in the process reports:
"Skipping this step as no machines were found for the tenant in the role: "
The step in the process is vital for the operation of the software, so I want this configuration error to be considered a deployment failure. Is there a way to mark a step as mandatory? Such that if its skipped its an automatic fail
I believe I understand your scenario. It is currently not possible to mark a step as mandatory.
I would encourage you to create a UserVoice suggestion for this feature.
One way I can think to achieve the desired result would be to set an output variable in the step you wish to be mandatory, and check that the variable has been set in a subsequent step that is not scoped to any roles\tenants (so it will always run). At that point you can either fail the deployment or log a warning if the output variable has not been set.
Do you think that could work for your scenario?
I hope that helps,