Octopus behind a corporate proxy

Hi,

I’m trying to configure an Octopus server behind a corporate proxy, and I’m not having much luck.

In particular, I’m unable to access a nuget feed. In the web interface, I’ve set up the nuget feed with url: http://www.nuget.org/api/v2/.

When I installed Octopus, I ticked the “use internet explorer settings”. I have also verified that IE can navigate to http://www.nuget.org/api/v2/.

When I try to test the feed via the octopus web interface, I get an error after about 20 seconds: “There was a problem processing your request: 400 Unable to connect to the remote server”.

In the event viewer, I see the following:

2013-08-05 08:43:46,330 [12] ERROR Octopus [(null)] - System.Net.WebException: Unable to connect to the remote server —> System.Net.Sockets.SocketException: A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond 168.62.224.25:80
at System.Net.Sockets.Socket.DoConnect(EndPoint endPointSnapshot, SocketAddress socketAddress)
at System.Net.ServicePoint.ConnectSocketInternal(Boolean connectFailure, Socket s4, Socket s6, Socket& socket, IPAddress& address, ConnectSocketState state, IAsyncResult asyncResult, Exception& exception)
— End of inner exception stack trace —
at System.Net.HttpWebRequest.GetResponse()
at NuGet.RequestHelper.GetResponse(Func1 createRequest, Action1 prepareRequest, IProxyCache proxyCache, ICredentialCache credentialCache, ICredentialProvider credentialProvider)
at NuGet.HttpClient.GetResponse()
at NuGet.RedirectedHttpClient.GetResponseUri(HttpClient client)
at NuGet.RedirectedHttpClient.EnsureClient()
at System.Lazy1.CreateValue() at System.Lazy1.LazyInitValue()
at NuGet.RedirectedHttpClient.get_CachedClient()
at NuGet.RedirectedHttpClient.get_Uri()
at NuGet.DataServicePackageRepository.GetPackages()
at Octopus.Portal.Areas.Api.Controllers.PackagesController.SearchForPackagesNamedLike(IPackageRepository repository, String packageId, Int32 take)
at Octopus.Portal.Areas.Api.Controllers.PackagesController.Index(String feedId, String packageId, Boolean partialMatch, Boolean includeMultipleVersions, Int32 take)
at lambda_method(Closure , ControllerBase , Object[] )
at System.Web.Mvc.ReflectedActionDescriptor.Execute(ControllerContext controllerContext, IDictionary2 parameters) at System.Web.Mvc.ControllerActionInvoker.InvokeActionMethod(ControllerContext controllerContext, ActionDescriptor actionDescriptor, IDictionary2 parameters)
at System.Web.Mvc.Async.AsyncControllerActionInvoker.<>c__DisplayClass37.<>c__DisplayClass39.b__33()
at System.Web.Mvc.Async.AsyncControllerActionInvoker.<>c__DisplayClass4f.b__49()

Can you please let me know how I can get this working?

Kind regards,
-Rob-

Rob,

If your tentacles are outside of the corporate network, you could try configuring your deployment step so that ‘Each Tentacle will download the package directly from the NuGet server’.

Alternatively, if everything is inside the corporate network, I’d recommend hosting your own NuGet repository to get around this, ProGet is a very good option, and it’s free.

Cheers
Tom

Hi Tom,

Thanks for your response.
Our current set up is Nuget outside the firewall, and Octopus inside. Is there no way to get this working through the proxy?

We have visual studio working through the proxy (using the OS configured settings), so it’s possible to do. It’s just figuring out the settings for Octopus.

Thanks,
-Rob-