Block release for specified Tenant or Environment

Currently we have multiple projects for different clients. Deployment processes and runbooks are very similar to each other so we plan to jump into multi-tenant deployment pattern.

The only problem I might see for now is requirement to generate (we’re using TeamCity for that) all packages for every client every time a deploy is triggered, even if there’s much of a hurry to deploy hotfix release to a single tenant or environment. For example deployment (packages generating) will wait for generating application that’s directly related only to one client, and not the one that we need to deploy right now in emergency mode.

I might workaround this at the TeamCity level and just skip this package, but after release creation I would like to mark somehow this generated release, that it’s not a “full” one, and it should not be deployed to one of the client (where this package is required).

Can you suggest something that might be helpful in scenario like this one?

Hi Rafal,

Your situation sounds ideal for Octopus Tenants. Have you had a chance to try to set it up yet? You may be surprised at what you’ll run or run into while setting it up!

For your specific question, when deploying a release in Octopus of a tenanted project, you can select individual tenants that you want to use only for that release. Here’s a page in our documentation that describes a bit about how it works:

I hope this helps.