The Current State
Prior to version 3.4 proxy support in Octopus was limited to your Octopus Server or Tentacle needing to talk to other servers. It was limited to if your Tentacle needed to make web requests in a Powershell script during a deployment, or when the Octopus Server connected to Azure during Azure deployments. Communications between Octopus Server and Tentacles happens via our communications library Halibut, which doesn't know about Proxies.
The current state of proxy support in Octopus
This is because Octopus relies on the proxy support in .NET's
System.Net.WebRequest, but Halibut works down at the
Expanding Proxy Support
In 3.4 we've taught Halibut how to swim through proxies. This means you can now tell Polling Tentacles to poll the server through a proxy, and the Octopus Server to connect to Listening Tentacles through a proxy. You can even have different proxy servers for different Tentacles if your network requires it.
This should put an end to our users needing to beg their corporate IT department to make a firewall allowance just for Octopus. (It may also allow the use of Listening Tentacles in some cases where Polling was the workaround.)
Coming in 3.4 - proxies everywhere!
Setting it up
Let's take a quick run through how you would configure Octopus to use a proxy when configuring a Listening Tentacle. First you need to setup the proxy details in the Configuration section of Octopus:
You can then tell Octopus to communicate with a Listening Tentacle via this proxy in the communication settings area for the Tentacle:
That's it! Now all communications between the Octopus Server and your Tentacle will go via that proxy. Polling Tentacles are a little different, since Polling Tentacles instigate all communications, we need to setup the proxy at the Tentacle end. When you install a Polling Tentacle you are now given the option of setting up a proxy that the Tentacle will use for polling (it will also be used for the registration call the Tentacle makes during setup):
So there you have it. More proxy support than you can shake a stick at. If this is something that you think would be useful in your Octopus use, why not download the 3.4 beta and try it out, or for more information, please see the Octopus proxy support page.