An early look at Team Foundation Build 2010 with Jim Lamb

Sign in to queue

Description

In addition to being one of the nicest guys I know, Jim Lamb also knows a thing or two about build automation. Jim is the program manager responsible for the Team Build capability of Team Foundation Server. Team Build was one of the biggest areas of improvement for Team Foundation Server 2008, but that hasn't stopped the team from doing even more landmark improvments in Team Foundation Server 2010.

Jim shows off how Team Build 2010 will take advantage of Windows Workflow, build agent pooling, distributed asynchronized builds, and two new types of build called "buddy builds" and gated check-ins.

This "Humanized Screencast" is best viewed at fullscreen using the high-quality WMV download.

Embed

Download

Download this episode

The Discussion

  • User profile image
    BSalita
    Does Build 2010 have extensibility enhancements for VS based 3rd party languages?

  • User profile image
    Jim Lamb
    @BSalita, I'm not sure what you mean by "extensibility enhancements for VS based 3rd party languages." For TFS 2008, 3rd parties implementing languages for Visual Studio must include an MSBuild-compatible project file to work with Team Build. The same is true for TFS 2010.
  • User profile image
    BSalita
    I'm not sure what I wrote either. Let me try again. Currently my language creates solution and project files by writing lines to files using printf(). I was hoping there was an API that would encapsulate this process. The API is important in that it would document the features of build. The capabilities of build are not so easy to find, understand or implement.
  • User profile image
    briankel
    How do you compile using your language today?

    Team Build is build on top of MSBuild. So if your language already has an MSBuild task (several do) you should use that. Else you can use the generic MSBuild "exec" task to call any .EXE, .BAT, etc.
  • User profile image
    BSalita
    I'm taking too much of your valuable time with ill-conceived questions. There's no need to respond further.

    My posts are expressing an interest in being able to instantiate build as a .Net object. For that matter, I'd like to instantiate MS compilers, VS, IL assember, IL disassember and PEVerify. No more Exec-ing, batching, or cryptic COM stuff. That's the way I write compilers and tools and wish others did it the same way.
  • User profile image
    JimLamb
    You might be interested in this "How do I" article:
    Create a Basic Language Service Using the Managed Babel System
  • User profile image
    MikeGoatly

    Say I'm working on a project that has a certain build process in place and it gets shipped, the code will be branched and I'll carry on working on the main trunk. If I needed to fix a bug in the earlier branch of the code, I would want to be confident that any build I perform against it was the exact build process that was around when the branch occurred. (You could kind of do this in team build 2008 by storing the build script within the workspace of the solution)

    The build processes I've been involved in do more than just build the solution, they also package and in some cases deploy the application binaries, as well as upgrading databases. It would seem to me that these "processes" fit better with the new build workflow you demonstrated, but if they are "global" build definitions and not tied to a specific branch of the app, then I'd still have to use my current msbuild approach.

    Is there any way in team build 2010 to "branch" these build processes? If not, how would you recommend branch builds be maintained?

  • User profile image
    trickyVikas
    Hi Jim,

    A product enhancement request related to Project Alerts area w.r.t. Team Builds. As of now, TFS provides 2 team project level related to team builds i.e.,

    1. When a build completes
    2. When a build quality changes

    But in practical world, the audience/stakeholders for these alerts is always different for each build type lets say a scenario for Daily Build vs Bi-weekly build or Development Build vs Release Build. Same holds true for the build quality changes of these builds. A QA / UAT / PRODUCTION resource is not interested in all the builds and its quality changes except the Release Build.

    Request : So, It would be nice to have Build Alerts a part of build type definition itself. The project alerts at the team project level will still be beneficial at the project team level / project managers and above ....
  • User profile image
    chris lively
    Someone should get that man a new chair. 
  • User profile image
    vicente.​perez

    Hi, James,

     

    I see in your screen that you have many features under the Process tab in the build definition. Currently I have installed VS2010 and when I try to create a new definition I see just a few features to con figure, and the look like of the build definition windows is quite different. Do I have to install some add-in?

Comments closed

Comments have been closed since this content was published more than 30 days ago, but if you'd like to send us feedback you can Contact Us.