none
TFS 2010: View All Builds Across Multiple Team Projects on 1 Controller

    Question

  • I know I can see all of the builds for 1 team project in the Team Explorer View using the All Build Definitions.

    But how can I view all of the builds currently queued or completed across multiple team projects but all in the same team project collection using the same agent and controller?

    Thursday, May 13, 2010 6:59 PM

Answers

  • Unfortunately, you can't. In fact, there is no good way to change (or see) which team project you are viewing from the Build Explorer. You have to reopen it by navigating to the Builds node in Team Explorer and opening a build definition (or All Build Definitions).

    We have recognized this as a pain point. Unfortunately, this is the way it worked in 2008, and when the controllers were scoped to the entire project collection in 2010, the associated changes weren't made to the Build Explorer.


    Adam
    Thursday, May 13, 2010 8:12 PM

All replies

  • Unfortunately, you can't. In fact, there is no good way to change (or see) which team project you are viewing from the Build Explorer. You have to reopen it by navigating to the Builds node in Team Explorer and opening a build definition (or All Build Definitions).

    We have recognized this as a pain point. Unfortunately, this is the way it worked in 2008, and when the controllers were scoped to the entire project collection in 2010, the associated changes weren't made to the Build Explorer.


    Adam
    Thursday, May 13, 2010 8:12 PM
  • I'm running into the problem of users complaining about how long builds are taking to get built. Most of our builds are hourly and we have 30+ Team Projects across a Team Project Collection so most builds start with a priority around 30 or 40 (which means there are 30 or 40 builds ahead of it).

    My users just want to know where their build is in the queue. IE what builds are ahead of it.

    Is there a command line or tool that can aggregate the builds happening on a build controller?

    Friday, July 02, 2010 2:44 PM
  • Still looking for a solution.
    Thursday, July 08, 2010 1:50 PM
  • Hi,

    I agree it is annoying to not be able to see builds across team projects for a build controller. The current UI does not have the feature and I am not aware of any tools available. But it is possible to do it using the TFS Build Client OM. You can try wrapping this up in a simple console app or winforms app.

    Thanks,

    Madhuri

     

    using Microsoft.TeamFoundation.Client;

    using Microsoft.TeamFoundation.Build.Client;

    TfsTeamProjectCollection tfs = TfsTeamProjectCollectionFactory.GetTeamProjectCollection(new Uri(MyCollectionUrl));

    IBuildServer bs = tfs.GetService<IBuildServer>();

    IQueuedBuildSpec qbSpec = bs.CreateBuildQueueSpec("*", "*");

    IQueuedBuildQueryResult qbResults = bs.QueryQueuedBuilds(qbSpec);

    foreach (IQueuedBuild qb in qbResults.QueuedBuilds)

    {

      if (qb.BuildController.Name.Equals(MyControllerName))

      {

        string status = qb.Status.ToString();

        string def = qb.TeamProject + @"\" + qb.BuildDefinition.Name;

        string pri = qb.Priority.ToString();

        string datequeued = qb.QueueTime.ToString();

        string requestedBy = qb.RequestedBy;

        if (qb.RequestedBy != qb.RequestedFor)

        {

            requestedBy = qb.RequestedBy + " (for " + qb.RequestedFor + ")";

        }

        Console.WriteLine("{0} {1} {2} {3} {4}", status, def, pri, datequeued, requestedBy);

      }

    }

     

    Thursday, July 08, 2010 7:47 PM
  • I voted on connect as well.
    Tuesday, December 14, 2010 3:28 PM