TfsBuild.rsp and Logging Verbosity in Orcas

In the 2.0 .NET Framework, MSBuild’s default verbosity for its FileLogger was “normal”.  As such, if you needed diagnostic logging information in a Team Build build (e.g. for debugging an issue with the build process) you needed to add the following to your TfsBuild.rsp file: /verbosity:diagnostic -or more briefly- /v:diag In the 3.5 .NET Framework,…

4

Adding Build Steps to Team Build in orcas

Way back in August I did a post (my 2nd ever!) on adding build steps to Team Build using a custom task.  I thought I would revisit this topic in the context of the latest version of Team Build, now available in the March CTP of Orcas. In Orcas, you’ll have two options for adding build…

9

Passing custom properties to individual solutions in Team Build

Gautam Goenka posted an article on this topic way back on April 20, 2006.  It included a targets file which overrode the standard Team Build CoreCompile target and allowed user-specified properties to be passed into the MSBuild tast that Team Build uses to build the solution in the SolutionToBuild item group.  This approach is fine…

12

The Triumphant Return?

Wow – it’s been a long time. Sorry for the insanely long delay between posts, loyal reader(s). A lot has happened since I last managed to post something on my blog: I’ve been working like crazy, along with the rest of the Team Build team, to get our Continuous Integration solution finished up for the Orcas release…

5

Determining Whether Tests Passed in Team Build

In a forum post a while back, I laid out a method for determining whether tests had passed during a build.  More recently, I have linked to this forum post in advising others on similar problems.  Unfortunately, as a sharp user pointed out in this same thread, my solution doesn’t actually work, since it relies…

11

Building a Specific Version with Team Build

Team Build by default gets the latest version of your sources (or tip) from source control.  For the most part, this is probably the behavior you would want and expect.  But not always – you might want to reproduce a particular build that got deleted, for example; or you might want to build your latest…

9

MSBuild Batching – Generate a Cross-Product (continued)

As promised, here is the code for the ItemGroupCrossProduct task presented in a previous post:using System; using System.Collections.Generic; using Microsoft.Build.Framework; using Microsoft.Build.Utilities; namespace CustomTasks { public class ItemGroupCrossProduct : Task { [Required] public ITaskItem[] ItemGroup1 { get { return m_itemGroup1; } set { m_itemGroup1 = value; } } [Required] public string MetaData1 { get { return…

1

MSBuild Batching – Generating a Cross-Product

I’ve been playing around with the batching functionality in MSBuild quite a bit lately, and thought I’d share my various little discoveries with the world…  If you aren’t sure what batching is in MSBuild, check out this MSDN page.  Alternatively, here’s my five second explanation – batching allows you to simulate a foreach loop over the…

5

Adding Custom Loggers to Team Build

Most of the magic in a Team Build is done using either (a) customized tasks, or (b) a customized logger.  Well, most of the build machine magic – there’s plenty of magic in the client, the Application Tier, and the Data Tier.  All right – even on the build machine I suppose plenty of magic happens within MSBuild…

5

Adding BuildSteps to Team Build through a Custom Task

Team Build displays Build Steps in the build report form within Visual Studio.  By default, build steps are added at various points during the course of a build – while getting sources (in the Get task), compiling solutions / projects, copying files to the drop location, etc.  Team Build allows users to insert their own…

21