Aaron Hallberg

Team Build (Build Automation) - Visual Studio North Carolina

Blog - About

About Aaron Hallberg

I am currently a developer for Team Build, the build automation feature of Team Foundation Server.  Prior to that I worked on the Environmental Benefits Mapping and Analysis Program (BenMAP), a tool used by the EPA to estimate the health and economic impacts of air pollution.  Prior to that I worked on speech software, including the Microsoft Text-to-Speech (TTS) engine, the Speech API (SAPI), and the Microsoft Speech Server. 

  • Aaron Hallberg

    Team Build 2008 Property Reference

    • 17 Comments
    There are lots and lots of MSBuild properties available to Team Build 2008 build definitions, most of which are probably unknown to the majority of users. As such, I've tried to compile a comprehensive list of these properties so that they can (hopefully...
  • Aaron Hallberg

    Solution Configurations

    • 6 Comments
    Team Build (v1 and Orcas) typically deals with solution configurations, which many people (including me circa 2005) don't understand. So - I figured I'd post a quick tutorial here on solution configurations vs. project configurations... Project-Level...
  • Aaron Hallberg

    Team Build and 260+ Character Paths

    • 19 Comments
    A fairly common issue in Team Build v1 involved builds failing due to paths that exceed 260 characters - see this forum post, for example. 260 characters is not a Team Build limit - it is a Windows limit. See here for a reference on this topic... Team...
  • Aaron Hallberg

    Team Build DevEnv Task

    • 23 Comments
    Because many Visual Studio project types are not supported in MSBuild, many Team Build users end up needing to invoke DevEnv directly. There is a fair amount of confusion about how to do this best / simplest - I've written two posts ( here and here )...
  • Aaron Hallberg

    Preserving Output Directory Structures in Orcas Team Build

    • 14 Comments
    A common complaint with Team Build v1 was that it ignored the output paths specified for individual projects and just dumped all binaries and other compilation outputs into a flat directory structure... In previous posts (e.g. this one ) I have discussed...
  • Aaron Hallberg

    Adding BuildSteps to Team Build through a Custom Task

    • 21 Comments
    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...
  • Aaron Hallberg

    Team Build and Web Deployment Projects

    • 13 Comments
    Various issues arise when trying to use Team Build with Web Deployment Projects (which are a Visual Studio 2005 add-in available for download here ). I'm going to try and use this post as a repository for these issues and their workarounds, etc. Team...
  • Aaron Hallberg

    Error MSB3021 and Team Build

    • 6 Comments
    The error message " error MSB3021: Unable to copy file "<filename>" to "<output location>". Access to the path '<output location>' is denied " occurs when the MSBuild Copy task cannot overwrite an existing read-only file. Typically in...
  • Aaron Hallberg

    Building From The Command-Line With DevEnv

    • 4 Comments
    Many Visual Studio project types are not supported by MSBuild - setup projects, reporting projects, etc. As such, the typical guidance for building these types of projects from within Team Build has centered around invoking devenv (the IDE) using an Exec...
  • Aaron Hallberg

    MSBuild Property Evaluation

    • 6 Comments
    I needed a reference on MSBuild property evaluation to link to from another post I've been working on, and discovered that such a thing doesn't really exist! (Or, alternatively, that my web search skills are not what they once were) Unfortunately, this...
  • Aaron Hallberg

    Writing Custom Activities for TFS Build 2010 (Beta 1)

    • 7 Comments
    With TFS Build 2010 (Beta 1) , we've changed the build orchestration language from MSBuild to Windows Workflow Foundation (WF).  As such, you now have a new option for adding custom logic to your build proces - custom WF activities.  I've gotten...
  • Aaron Hallberg

    Building Non-MSBuild Projects With Team Build

    • 24 Comments
    Building non-MSBuild projects in Team Build has never been a particularly nice experience... You can make it work, typically by invoking DevEnv.exe or some other tool using an Exec task, but you don't get any output in your build report, can't control...
  • Aaron Hallberg

    Team Build and aspnet_compiler.exe

    • 4 Comments
    It's funny how things come in bunches sometimes... I had never heard of the issue discussed in this blog post as of a couple of days ago, but we have received two queries on the topic in the Team Build forums in the last few days. (Here they are, if you...
  • Aaron Hallberg

    Team Build and the AssemblyInfo Task

    • 8 Comments
    Gautam Goenka, dev lead for Team Build v1, wrote a blog post way back in January of 2004 that laid out an approach for using the AssemblyInfo task to update version numbers with Team Build. I refer people to this post all the time, and have never had...
  • Aaron Hallberg

    Building a Specific Version with Team Build

    • 9 Comments
    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,...
  • Aaron Hallberg

    MSBuild Batching - Generating a Cross-Product

    • 5 Comments
    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...
  • Aaron Hallberg

    How to: Fail a Build When Tests Fail

    • 7 Comments
    Got an email from Martin Woodward this morning asking: What would be your preferred way to fully fail the build on test failure rather than partially succeed the build? A bit of background - Team Build 2008 marks builds as Succeeded if no errors are encountered...
  • Aaron Hallberg

    TfsBuild.rsp and Logging Verbosity in Orcas

    • 4 Comments
    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...
  • Aaron Hallberg

    TargetsNotLogged Hotfix Available

    • 10 Comments
    I did a post a while back on a change in TFS Build SP1 which reduced build log noise by cutting out the build steps for project-to-project references (of the form "Project 'project' is building project 'dependent project' for target(s) 'GetNativePath...
  • Aaron Hallberg

    A Minimal TFSBuild.Proj File

    • 3 Comments
    A fair number of people seem to want to use Team Build to kick off their own pre-existing build scripts that have nothing in common with the process defined in Microsoft.TeamFoundation.Build.targets.  While we don't typically encourage this, enough...
  • Aaron Hallberg

    Determining Whether Tests Passed in Team Build

    • 11 Comments
    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...
  • Aaron Hallberg

    Adding Build Steps to Team Build in orcas

    • 9 Comments
    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...
  • Aaron Hallberg

    Calling Custom Targets Within Team Build

    • 6 Comments
    In Team Build v1 (VSTF 2005), the CoreCompile target always invoked the Build target of the solutions specified in the SolutionToBuild item group within your TfsBuild.proj file. To support ClickOnce deployment, an additional item group called SolutionToPublish...
  • Aaron Hallberg

    Associating changesets and Work Items Since the Last Successful Build

    • 3 Comments
    We got a forum post the other day on whether changesets and work items could be associated since the last Successful build.  Some of you may be thinking "Isn't that how it already works?"  Actually, it's not quite how it works. ...
  • Aaron Hallberg

    Orcas SP1 TFS Build Changes, Part 2

    • 3 Comments
    As promised, here are some more details on other SP1 changes for TFS Build.  3. Detect test results. In Whidbey, a failed test would result in a failed build - builds were either Succeeded or Failed, so there wasn't really much middle ground. ...
Page 1 of 3 (67 items) 123