Selecting a different worker pool per tenant

I’m deploying a web application to two different Azure App Services, one hosted in the US and one hosted in the UK. I’m using the tenants feature to represent the different regions I’m deploying to. I’ve found that the US deployments take longer than the UK deployments, which makes sense as my Octopus Server is hosted in the UK.

In order to speed up deployments to the US App Service, I thought I’d try out workers. I’ve configured a new worker pool and registered an existing tentacle, hosted on a VM in the US, as an external worker in this pool. I’m now able to select between the “Default Worker Pool” and my new worker pool in deployment steps. However, I don’t appear to be able to conditionally switch between the two.

Ideally I’d be able to configure an expression that would determine the worker pool to use based on some property of the tenant being deployed to, for example, something as simple as a “Is US tenant” project variable template. However, the only way I can currently see to achieve this is to duplicate each step of my process, with one of the duplicates targeting the “Default Worker Pool” and the other the new worker pool, and then conditionally running each of these steps depending on the deployment tenant, which isn’t ideal.

Are you able to suggest some configuration that would allow me to achieve the scenario described above, namely a single deployment step targeting a different worker pool depending on the tenant being deployed to?

Hi @chris_wrench!

Thanks for reaching out - while this is not something we currently support, our one of our teams is actually working on support for doing this currently, and expect this to be possible in the near future!

Sorry I don’t have an immediate solution for you right now, but stay tuned to our upcoming releases for a solution here.