What is `build agent folder` $(SourceDir) of a build definition in TFS Build 2012?
build-definition, tfsbuild
Solution
`$(SourceDir)` is the Directory on the Build machine, which will be used for Check-out your source code from TFS and then to Compile it and Build.
Value for the $(SourceDir) is what you will configure it to; normally your working directory on the build machine and by default its value come from `Working directory` settings on the `build agent` properties (red marked) option as shown in the picture; i.e. `$(SystemDrive)\Builds\$(BuildAgentId)\$(BuildDefinitionPath)`
Where
- $(SystemDrive) is system drive, e.g. C:
- $(BuldAgentID) is a numeric number assigned to agents normally 1,2,3 etc.
- ($BuildDefinitionPath) is the root folder of your source code from TFS.
So a typical example of $(SourceDir) can be "C:\Bulids\1\TeamProjectName\Path\To\Your\App"
Problem
When creating a `build definition` for a TFS build, there is a section called `Source Settings` as below snapshoot where we have to define 1) Source Control Folder and 2) Build Agent Folder. As I understand, the `source control folder` is where to get the source to build. But I don't get the idea what is the `build agent folder` is used for in a build. Please share me what that is about if you know it. Thank you!