How to run steps on the Octopus Server

Last updated

Octopus 3.3 and newer support Running Scripts on the Octopus Server. These will run in the same user context as the Octopus Server.

When adding a NuGet Package step or Script step, Octopus will expect you to choose a Tentacle that the step will run on. However, sometimes you might not want to run the step on another machine, and instead wish to run it on the central Octopus Server. This guide explains how you can accomplish this.

Step-by-step guide

Follow these steps to install a Tentacle on the Octopus Server.

  1. Follow the steps on installing Tentacles to download the Tentacle MSI and install it on the Octopus Server.
  2. Configure the Tentacle in listening mode, and register it so that it appears in your Environments tab.
  3. Assign the machine to all of your applicable environments, and give it a role like octopus-server:

  1. When configuring your step, you can now choose the octopus-server role as your target:

Why do I have to install Tentacle? 

Octopus Tentacle enable tasks to be run in a flexible way.  You can configure your Tentacle service to run under a different user account, for example. In fact, you could have one Tentacle instance for your pre-production steps, and another for production steps, running under different user

An analogy is to think about the way build agents in TeamCity or TFS work. You can't make the TeamCity server or TFS server arbitrarily run scripts during the build. But you can install the build agent service on the same server as your TeamCity/TFS server, and it has the same effect, but with more flexibility.