We have comprehensive inline documentation for the properties defined in TfsBuild.proj file. These are very commonly used properties. There are several additional properties and overridable targets defined in TeamBuild targets file (Microsoft.TeamFoundationBuild.targets) that can be helpful while customize the build process. Here is the complete laundry list of these properties and targets.
I’ve not included here the targets defined for teambuild internal build process which should not be overridden.
Properties the can be overridden
SkipClean
set this property to skip clean action
SkipGet
set this property to skip get action
SkipLabel
set this property to skip labeling action
SkipInitializeWorkspace
set this property to skip workspace creation action
SkipPostBuild
set this property to skip gathering associated changesets and workitems
SkipDropBuild
set this property to skip drop build action.
SkipWorkItemCreation
set this property to skip workitem creation on build failure
AdditionalVCOverrides
additional VC property sheets passed to the VC++ solutions in the build process
SolutionRoot
points to the root of the sources folder on build machine
Other Properties
WorkspaceName
identifies the name of the workspace created for this build
IsDesktopBuild
identifies if the build process is a desktop build
BinariesRoot
points to the binaries folder on build machine
TestResultsRoot
points to test results folder on build machine
BuildType
identifies the name of the build type
BuildNumber
identifies the name of the build, i.e., the build number
TeamFoundationServerUrl
identifies the URL of the team foundation server
Overridabe Targets
BeforeEndToEndIteration
called immediately after the full stack build is started on the build machine
AfterEndToEndIteration
called at the end of full stack build
BuildNumberOverrideTarget
target to override to customize the build number
BeforeClean
called before clean is attempted
AfterClean
called after clean is completed
BeforeGet
called before sources are get
AfterGet
called after sources are fetched
BeforeLabel
called before sources are labeled
AfterLabel
called after labeling is completed
BeforeCompile
called before compilation is started
AfterCompile
called after compilation is completed
BeforeTest
called before testing is attempted
AfterTest
called after testing is completed
BeforeDropBuild
called before dropping the built binaries, build log files and test results to release server
AfterDropBuild
called after dropping the built binaries, build log files and test results to release server
BeforeOnBuildBreak
called before creating workitem on the build break
AfterOnBuildBreak
called after workitem is created on the build break
Namaste