Desktop Build – where are the commands?

In a team environment, developers would need to use the same build configuration that is used to release the product builds and validate their implementation on their machines. TeamBuild offers this functionality through a feature called ‘Desktop Build’ – build on a developer box. Refer Uday’s blog to learn details on this subject.

Running ‘Desktop Build’ essentially means you run msbuild on TfsBuild.proj that belongs to a build type from a developer machine. The TeamBuild scripts including TfsBuild.proj are located at $/TeamProject/TeamBuildTypes/<BuildType>.

I’m listing some useful commands below:

msbuild TfsBuild.proj

Performs incremental build and runs tests

msbuild TfsBuild.proj /t:Clean

Performs clean only operation; It cleans common _binaries_ folder and all intermediate obj folders

msbuild TfsBuild.proj /t:Compile

Performs incremental compilation

msbuild TfsBuild.proj /t:Test

Runs tests only

msbuild TfsBuild.proj /t:DesktopRebuild

Performs clean à full compile à run tests. In Beta3 bits, tests are not included with ‘DesktopRebuild’. It is a bug, fixed in post B3 bits.

msbuild TfsBuild.proj /t:BinariesRoot=d:\foo /t:TestResultsRoot=d:\bar

We currently do not support overriding output directory. The workaround is to override ‘BinariesRoot’ where product binaries get copied and ‘TestResultsRoot’ where test results get uploaded.

msbuild TfsBuild.proj /p:RunCodeAnalysis=false

Disable code analysis in desktop build

msbuild TfsBuild.proj /t:RunTest=false

Do not run tests in desktop build