How do I setup Azure DevOps Pipeline and on-prem Octopous where the Build is on Azure but deploy using an on-prem Azure Deployment Agent. We do not have Octopus open for external access.
Thanks for getting in touch! I’m going to pass this over to our solutions team who are better equipped to handle these sort of pipeline how-to questions.
To get the ball rolling in the meantime, would you be able to expand on the details you have provided and the constraints of your scenario?
A better understanding how Octopus fits into your setup and some more specifics on how you need your pipeline to function will help the team provide the best advice they can.
Looking forward to hearing from you.
Thank you for the reply.
We have our code repository on Azure DevOps. The web servers and Octopus are on our internal network only. The servers can reach out to the internet but we cannot reach the server from outside.
We are wanting to setup Deployment in a way that the build happens on Azure Hosted but the Deployment is done through an on-prem self hosted Azure Deployment Agent fetching the build from Azure and deploying it through Octopus. (Ideally we don’t want the build process to be on-prem, just the release agent has to be on-prem)
Thanks for the additional context.
I think the solution to this is to deploy an on-premise Azure build agent in the same network as Octopus deploy that calls outs to Azure DevOps via the internet, and then when using any Octopus/Azure DevOps integration step choose to run those steps on the on-premise build agent.
I hope this help, but if you have any questions, please let me know.
Thank you for the reply. We had the Azure Pipelines and Octopus Server on premises working fine till we decided to close our inbound firewall ports to the server. So till now all the build process was happening on the Azure hosted servers - which was very convenient as we do not have to worry about installing any of the tools related to build on our on premises server.
Now would not on-premise Azure build agent build the code on premises? We want to avoid that and have just a release/deployment agent on premises. Is it possible to do that?
If not can we designate a different machine on our network as web proxy to our internal Octopus Server so Azure can call it instead of a direct call on the machine where Octopus is installed? If so can you provide documentation for that? This would be a good solution too.
Or otherwise can you help us migrate our current Octopus server to a different windows server with all the settings and history?
I’m not an Azure DevOps expert, but I believe you can have multiple agents running different steps in your pipeline. I think the best solution would be to create an Azure DevOps agent that can communicate with Octopus and use that agent to run your release deployment steps but leave the build steps running on the original agent.
I’d take a look here on how to set this up in Azure DevOps.
Let me know if you have more questions on this.
Thank you for your help on this. We will configure as suggested (looks like not a major change except the on-prem agent does the package and push part) and let you know if we can get that working!
This topic was automatically closed 31 days after the last reply. New replies are no longer allowed.