This page is for Octopus Deploy 3.0 and newer versions. You can view this page for Octopus 2.0

Skip to end of metadata
Go to start of metadata

While fully automated deployment is a great goal, not every step in a deployment can be automated, and sometimes a human needs to get involved. Production deployments may require:

  • Getting sign off/approval before a deployment
  • A human checking that the homepage of a newly deployed site works before making it live
  • Performing a database upgrade or updating some infrastructure in an environment where you're not allowed to automate the steps (e.g., you have to deliver your database changes to a DBA to be manually reviewed and run)
  • Getting sign off/approval after a deployment completes

To support these scenarios, you can add Manual Steps to your deployment process. 

Adding manual steps

Manual steps are one of the step types that appear when you click Add step on the Process tab of your project. For information about adding a step to the deployment process, see the add step section. 

When you define a manual step, you specify some instructions for the step, and select a team of users who can take responsibility for the step. 

Assigning manual interventions

When a deployment is executing and a manual step is encountered, the deployment will show a status of Waiting. An interruption will appear at the top of the deployment summary. 

You can click show details to view the instructions. 

If you are in the team of users that can take responsibility for the interruption, you'll also be able to assign the interruption to yourself. Interruptions can only be assigned to one person at a time - this is a simple way to prevent two people from accidentally performing the manual step. 

When the interruption has been assigned to you, you can then perform the action in the instructions, and then choose to either Proceed (allow the deployment to continue) or Abort (fail and stop the deployment from continuing):

When aborting a deployment, it's a good idea to write a reason into the Notes field, so that the rest of the team can see why the deployment was aborted.

Output variables

When a manual step is completed, details of the interruption are saved as variables that can be used in other steps including email templates.

Step Name below refers to the name given to the manual step, for example Ensure traders are aware of the deployment.

Variable nameContainsExample value
Octopus.Action[Step Name].Output.Manual.NotesThe contents of the Notes field from the interruption formChecked with Rick, got the all-clear; Michelle is out at a meeting.
Octopus.Action[Step Name].Output.Manual.ResponsibleUser.IdThe user ID of the user who submitted the interruption formusers-237
Octopus.Action[Step Name].Output.Manual.ResponsibleUser.UsernameThe username of the user who submitted the interruption formjjones
Octopus.Action[Step Name].Output.Manual.ResponsibleUser.DisplayNameThe display name of the user who submitted the interruption formJamie Jones
Octopus.Action[Step Name].Output.Manual.ResponsibleUser.EmailAddressThe email address of the user who submitted the interruption formjamie.jones@example.com
  • No labels