Please help me to figure out how to deploy only to necessary targets

It is easier to describe my task step by step.

  1. Currently I deploy 2 web sites: main site and admin panel. I have this architecture in environment page (simplified):
Environment: Test
  Target: Server1       Target: Server2
  Roles: Admin           Roles: Main

So, for test environment I deploy admin panel to Server1 and main site to Server2

  1. My manager ask me to add new QA environment and deploy Main site to Server1 in this environment.
    I created QA environment and added Server1.
**Environment: QA
  Target: Server1
    Roles: Admin**

Environment: Test
  Target: Server1       Target: Server2
    Roles: Admin           Roles: Main
  1. Now I add role “Main” to Server1 to deploy main site to QA environment:
Environment: QA
Target: Server1
  Roles: Admin, **Main**

Environment: Test
  Target: Server1             Target: Server2
    Roles: Admin, **Main**      Roles: Main

The problem is as a result Server1 has role “Main” also for “Test” environment, not only for “QA” and when I deploy main site to “Test”, it tries to deploy it to this Server1 too. How can I deploy main site only to Server2 in this situation?

  1. Basically, I want to archive this architecture:
Environment: QA
Target: Server1
  Roles: Main

Environment: Test
  Target: Server1             Target: Server2
    Roles: Admin                 Roles: Main

Hi Sergey,

Thanks for getting in touch! As you have found out, our roles are OR not AND considerations.
For your scenario I think you should consider adding a second Tentacle instance to your Server 1 and call it Server 3 or something unique.
This will allow you to give it both roles, it will be the same end server.
Instructions on how to do this can be found here: http://docs.octopus.com/display/OD/Managing+multiple+instances

Hope this helps! Let me know if you would like me to explain this further.
Vanessa