Storing Common Data Between Build Types

Is there a good place to store common files that you want to share between build types so that Team Build will retrieve it automatically when a build is initiated?
[171 byte] By [WilliamBartholomew] at [2007-12-24]
# 1

This depends on the type of the common files, and in particular, where they are needed in the build process.

* Custom tasks / loggers need to be present when msbuild.exe is started, meaning they need to get sync'ed to the build machine when TfsBuild.proj and the rest of the build type files are. Currently, the only way to get this to happen is to put these files into the same directory as TfsBuild.proj - this isn't particularly helpful for custom tasks / loggers that get used in multiple build types, and we are planning to address this issue in a future release.

* Other files which are needed at compile time (or at some other point during the build) can really be stored anywhere, though your life will be much simpler if you put them somewhere within the same Team Project as the build types in which they are needed. You'll just need to make sure that you adjust your various WorkspaceMapping.xml files such that the common files are sync'ed to some known location. (By default, the entire contents of the team project are sync'ed, but if you have modified this behavior you may need to add additional mappings for the common files)

-Aaron

AaronHallberg at 2007-10-8 > top of Msdn Tech,Visual Studio Team System,Team Foundation Server - Build Automation...
# 2
Thanks, the scenario I'm looking at is similar to the custom tasks/loggers one (it is my own .targets file that defines a bunch of targets, properties, and items for use in all build types). So if you address the issue with them having to be in the same directory as TfsBuild.proj that should solve my problem too.
WilliamBartholomew at 2007-10-8 > top of Msdn Tech,Visual Studio Team System,Team Foundation Server - Build Automation...
# 3
Aaron, is there a workaround for your first bullet other than manually deploying to the teambuild server everytime you make a change to the common script?
dzimmy at 2007-10-8 > top of Msdn Tech,Visual Studio Team System,Team Foundation Server - Build Automation...
# 4

Nope - the two options right now are (a) putting all your common stuff (that has to be there at script start time) into each build type directory in source control, or (b) manually installing it to some known location on each build machine.

-Aaron

AaronHallberg-MSFT at 2007-10-8 > top of Msdn Tech,Visual Studio Team System,Team Foundation Server - Build Automation...

Visual Studio Team System

Site Classified