locked
How to manually set a default agent for a default controller? RRS feed

  • Question

  • Hello,

       I have a build Controller (BC) and i there are 3 build agents (BA1, BA2, BA3) pointing to this controller. There is no tagging applied. Whenever I queue a new build, it gets executed on build agent BA1. 

    I want to have a configuration such that all my builds should get executed on BA2 so that BA1 & BA3 can be used only for specific builds.

    With the current implementation of Tagging in build definition, I can not say "Don't run this build on an agent that has <BA1> or <BA3> tags on it".

    Thanks,

    Saswat


    Busiest mind writes minimum code.

    Monday, March 17, 2014 10:50 AM

Answers

  • Hi Saswat, 

    First, build agent Name and Tag are two concepts in TFS Build Agent. We can both specific the Name filter and Tags filter in build definition.

    In your scenario, if you want all your 100 build definitions run on Agent1, there’s two ways:

    1        Add your Agent2 under a different build controller.

    2        Edit your 100 build definitions, set the value in Name filter and Tags filter in that 100 build definitions to make them run on Agent1.

    We cannot restrict that 100 build definitions run on Agent2 by setting or not setting tags on Agent2, when you add the Agent2 under the same build controller with Agent1.


    We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
    Click HERE to participate the survey.

    • Marked as answer by Saswat Behera Tuesday, March 18, 2014 9:22 AM
    Tuesday, March 18, 2014 7:33 AM
    Moderator

All replies

  • Some more info:

    I want to have a setup where if I have a tag in my build definition, it gets executed at a build agent which has that tag (this facility is already in place). But if my build definition doesn't have any tag, I want it to be executed in a build agent which doesn't have any tag. 



    Busiest mind writes minimum code.

    Monday, March 17, 2014 11:38 AM
  • Hi Saswat,  

    Thanks for your post.

    What’s the version of your TFS? 

    We can specific the build agent name in build definition, if you want run build definition on BA2, in your build definition>>Process>>Agent settings, set the BA2 as the value for Name filter.   


    We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
    Click HERE to participate the survey.

    Tuesday, March 18, 2014 2:26 AM
    Moderator
  • hello John, what I wanted is: Is there a way to have a build run specifically on an agent which doesn't have any tagging on it?

    Busiest mind writes minimum code.

    Tuesday, March 18, 2014 6:14 AM
  • Hi Saswat, 

    Thanks for your reply.

    You cannot specific the build agent name in your build definition?


    We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
    Click HERE to participate the survey.

    Tuesday, March 18, 2014 6:17 AM
    Moderator
  • Actually, I've got 100s of build definitions and I don't want to specify tagging for each of them so that they run on specific build agent. 

    Let's look at the problem with a different perspective. 

    I have 100 build definitions. 1 Controller and 1 agent, both in same domain. Until now, all the builds run fine and execute on Agent1. Then I add a new build definition that should run on another agent in another domain. So, I add Agent2 in another domain but pointing to the same controller. After adding this new Agent2, all my existing 100 build definitions are by default executing on Agent2. But since Agent2 is in another domain, they all fail for some access issues. 

    Therefore, I want that all my 100 Agents should run on Agent1 (No tagging) and build def 101 (created newly) should run on Agent2 (using tagging).

    Please help how can I achieve this.


    Busiest mind writes minimum code.

    Tuesday, March 18, 2014 6:55 AM
  • Hi Saswat, 

    First, build agent Name and Tag are two concepts in TFS Build Agent. We can both specific the Name filter and Tags filter in build definition.

    In your scenario, if you want all your 100 build definitions run on Agent1, there’s two ways:

    1        Add your Agent2 under a different build controller.

    2        Edit your 100 build definitions, set the value in Name filter and Tags filter in that 100 build definitions to make them run on Agent1.

    We cannot restrict that 100 build definitions run on Agent2 by setting or not setting tags on Agent2, when you add the Agent2 under the same build controller with Agent1.


    We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
    Click HERE to participate the survey.

    • Marked as answer by Saswat Behera Tuesday, March 18, 2014 9:22 AM
    Tuesday, March 18, 2014 7:33 AM
    Moderator