In addition to the Source Control Explorer improvements, the April 2008 Rosario CTP includes new Team Foundation Build functionality:
A new automated build system built on Windows Workflow Foundation, featuring dynamic build machine allocation from a machine pool and distributed build functionality.
The first thing you’ll notice when creating a New Build Definition.. is the new term of a “Build Controller”:
In Rosario, Team Build uses an agent/controller architecture where the controller is responsible for managing a pool of agents. By selecting which controller your build will run on, you are selecting the pool of build machines where the build will run. Additionally, the workflow that comprises your build process will run on both the controller and the agent with coordination activities occurring on the controller and the bulk of the processing occurring on the agent.
One of the things you’ll notice on this dialog is the notion of “Tags”. Tags let you define metadata for a build controller/agent. Then you can target your builds at agents/controllers that have a specified tag.
One of the tricky things to do in previous versions of Team Build is to manage the custom MSBuild task assemblies that are required for your build server. It can be quite tricky (and manual) to ensure all your build servers have the correct version of your custom tasks. One of the ways people have been doing this is to check-in the assembly to source control. e.g. $/TeamProject/TeamBuildTypes/MyBuild/MyMSBuildTasks.dll, then refer to them from TFSBuild.proj using a relative path.
From the above dialog it looks like (I haven’t tested it yet) Rosario allows you store custom assemblies in a common location in source control and it will handle all the magic for us.
The most significant Team Build change for users in Rosario would have to be the introduction of Windows Workflow for the Team Build logic. From this dialog it looks like every single target/task is a WF Activity. This opens up some interesting opportunities and I’ll have to dig deeper into it soon and work out how it works
If anything, I’ll have to start thinking about how to host custom activities on my Team Build scripts site – TFSBuild.com.
2 Comments
I’m disappointed they didn’t go the whole way and use BizTalk. Then my build system could be an orchestration, and if I ever wanted to use a different compiler, it would just be a BizTalk Adapter away…
It’s good to see that they are making a concerted effort in Rosario to enhance UI support for Team Build. MSBuild is powerful, but isn’t half as easy to use as Final Builder or Visual Build Pro.
2 Trackbacks
[...] TFS Rosario – Team Build uses Windows Workflow « Grant Holliday [...]
[...] add validation In my recent series of TFS Rosario blog posts, I’ve been looking at all the new features that are available in the April CTP of Visual Studio Team System Codename [...]