Aborting previous pending deployments when manual intervention step is executed

We plan to use the “manual intervention” step as a way to allow developers to mark a release as “ready for QA” by promoting it to QA with a manual intervention step so that when we actually want to deploy to QA, the proper people can just approve the intervention. However, since a developer may do this multiple times before the actual deployment (e.g. they mark a release as ready, add some more stuff, mark that release as ready, etc) and only the latest “deployment” will actually be approved, it seems like we would be left with a bunch of “deployments” hanging around that are waiting for approval. Is there a way to set it up so that when a developer “deploys” to an environment with a manual intervention step, all previous “deployments” that are waiting on a manual intervention are aborted?

Sorry for all the quotes, by the way; I used them to distinguish between an Octopus “deployment” and the actual deploying of components to a server (i.e. a completed deployment)

Hi David,

Thanks for reaching out! There’s no way to abort waiting manual interventions based upon an approval of a later deployment. That’s something that could be scripted via the API to approve these waiting manual intervention tasks. Though there are a couple of other options I think could be good alternatives in your scenario:

  • Create your releases but don’t deploy them. Then you can have your developer deploy it to QA when they’re ready.

  • If you have an environment preceding QA, you can deploy each release there, and have the developer promote it to the QA environment.

Both of these options will allow you to keep your previous releases, deploy the most recent releases at the appropriate times, and not have to worry about the waiting manual interventions.

Let me know if you have any further questions,

Kenny