DevOps and Octopus Server on Intranet

Hi,

I am trying to communicate our Octopus Server with Azure DevOps in order to push the package after a build into Octopus Server following your wonderful guide here:

Unfortunately, the Pipeline fails on the build with the error:

6T17:53:09.2706836Z Detected automation environment: "AzureDevOps"
2021-03-16T17:54:13.7526587Z 
2021-03-16T17:54:13.7528264Z System.Exception: Unable to connect to the Octopus Deploy server. See the inner exception for details. ---> System.Net.Http.HttpRequestException: No such host is known ---> System.Net.Sockets.SocketException: No such host is known

Actually, I noticed that when you try to select the Space it comes with nothing so I just tried filling it myself:

Pipeline

We have our Octopus Server just accessible via the Intranet, but not through the Internet, so I thought that may be the reason, which we needed to put Octopus visible externally. What I have read so far is that this is not really needed but I am struggling to set this up, as it can be seen in this example below:

I am not experienced in DevOps (I know just a little) so I would really appreciate your help with at least a bullet point list of what it would need to be configured. I can try then from that bullet point find more information.

  • My first question is, is this really feasible? Having the octopus server just in the Intranet and communicate it through a Service connection with DevOps? If so, could you please point me on the right direction in order to achieve this?
    I know that you can set visibility of intranet machines in DevOps when you are adding them as a Deployment Pool where you run a PowerShell script for this. Would it be this something similar?

  • If this is not feasible, what do you think it would be the best other option to achieve this, please? Could you please give me a brief list of what it should happen?

Many thanks.

Un saludo,
JuanJo

Hi @juan.garcia,

Thanks for getting in touch!

There is no strict requirement that the Octopus Server has to be exposed to the internet. I do have Octopus and Azure Dev Ops running in my test VM environments communicating via local network with no internet access and no problems.

The only requirement is that the machine that is running ADO needs a route to the Octopus Server URL entered into the Service Connection.

The error message you are receiving suggests that this may be a DNS problem. For some reason the ADO machine isn’t able to resolve the Octopus URL that you input. Trying to use the IP address or hostname of the Octopus Server may work here but ultimately it will likely be a case of bringing in your network team to ensure that there is HTTP(S) access between the two machines.

Regards,
Paul

Hi Paul,

Thanks for the quick response.
I was using actually the hostname, like http://machine-123. I tried with the IP but it did not work either. The thing is that the DevOps server is in the cloud so I am not too sure how the access would be enabled between the 2 machines.

Thanks.

Regards,
JuanJo

If the DevOps server is external to your Octopus Server then yes, you will need to expose the the server to the internet in some form. It can be placed behind a firewall and/or proxy but ultimately the DevOps machine has to be able to resolve the DNS and establish a connection to the Octopus Server.

Ok, perfect.
Yes, I missed the point that the DevOps server was internal in those examples. Actually, that used to be our case until recently.

Muchas gracias, Paul.

Regards,
JuanJo

1 Like