How does buildkite handle pre post deployment approvals?

Just wondering how does buildkite handle this

You could use block steps to stop a pipeline before the steps that perform the deployment. Someone would have to hit that button to allow the deploy to happen.
And afterwards, you could add a block step between the deploy and a rollback step to allow someone to verify the deploy and if it has errors can hit the block button to allow the pipeline to continue to the rollback step.

Does something like that fit your case?

I am considering implementing something like you’ve described @jarryd, however then our deploys appear in a paused state (when no rollback is needed). I don’t want the lack of a green check mark to throw people off when a deploy has succeeded. Do you have any suggestions to address this? Thanks!

Hi @allievt,

You can add a conditional step that verifies the deploy step outcome and to only execute the block step for rollback if the deploy step outcome failed. This way your deploy step will not pause when no rollback is needed.

Is this the scenario you are looking at?

Thanks @lizette. In our case, we want to support a rollback step in certain scenarios even where the deploy step passes, more of a manual rollback override that we may do at a later time if necessary.

Hi @allievt,

You could also use the buildkite-agent meta-data to store your rollback condition and use it to verify if your deploy step needs to pause for a rollback.