<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://msmvps.com/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>Visual Studio Team System (VSTS) Blog - by Neno Loje : Team Build Server</title><link>http://msmvps.com/blogs/vstsblog/archive/tags/Team+Build+Server/default.aspx</link><description>Tags: Team Build Server</description><dc:language>en</dc:language><generator>CommunityServer 2008.5 SP2 (Build: 40407.4157)</generator><item><title>Unable to publish test results from Visual Studio to TFS</title><link>http://msmvps.com/blogs/vstsblog/archive/2009/05/30/unable-to-publish-test-results-from-visual-studio-to-tfs.aspx</link><pubDate>Sat, 30 May 2009 20:54:41 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1693472</guid><dc:creator>neno</dc:creator><slash:comments>1</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/vstsblog/rsscomments.aspx?PostID=1693472</wfw:commentRss><wfw:comment xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/vstsblog/commentapi.aspx?PostID=1693472</wfw:comment><comments>http://msmvps.com/blogs/vstsblog/archive/2009/05/30/unable-to-publish-test-results-from-visual-studio-to-tfs.aspx#comments</comments><description>&lt;p&gt;Error message similar to:&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="mailto:username@servername"&gt;username@servername&lt;/a&gt; (mailto:username@servername) 2008-10-13 2:21:50&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; 0.28 MB&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; 10/13/2008 3:19:14 PM&amp;#160;&amp;#160;&amp;#160; Failed&amp;#160;&amp;#160;&amp;#160; Access to the path &amp;#39;\\DropFolder\Buildname_20080723.3\TestResults\fd8883e0-2153-44c6-8671-6d6db460c4a8\uesrname 2008-10-13 _02_21.trx&amp;#39; is denied.&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Cause: Permission issue&lt;/p&gt;  &lt;p&gt;A Workaround can be found in the &lt;a href="http://support.microsoft.com/kb/958726" target="_blank"&gt;KB article 958726&lt;/a&gt;.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1693472" width="1" height="1"&gt;</description><category domain="http://msmvps.com/blogs/vstsblog/archive/tags/For+Testers/default.aspx">For Testers</category><category domain="http://msmvps.com/blogs/vstsblog/archive/tags/Team+Foundation+Server+_2800_TFS_2900_/default.aspx">Team Foundation Server (TFS)</category><category domain="http://msmvps.com/blogs/vstsblog/archive/tags/TFS+IT+Administration/default.aspx">TFS IT Administration</category><category domain="http://msmvps.com/blogs/vstsblog/archive/tags/VSTS+Test/default.aspx">VSTS Test</category><category domain="http://msmvps.com/blogs/vstsblog/archive/tags/Team+Build+Server/default.aspx">Team Build Server</category><category domain="http://msmvps.com/blogs/vstsblog/archive/tags/Issues+and+Hotfixes/default.aspx">Issues and Hotfixes</category></item><item><title>Hotfix for Team Build 2008 SP1: Reducing project-to-project references in build log (KB958845)</title><link>http://msmvps.com/blogs/vstsblog/archive/2009/01/31/hotfix-for-team-build-2008-sp1-reducing-project-to-project-references-in-build-log-kb958845.aspx</link><pubDate>Sat, 31 Jan 2009 13:10:30 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1667621</guid><dc:creator>neno</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/vstsblog/rsscomments.aspx?PostID=1667621</wfw:commentRss><wfw:comment xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/vstsblog/commentapi.aspx?PostID=1667621</wfw:comment><comments>http://msmvps.com/blogs/vstsblog/archive/2009/01/31/hotfix-for-team-build-2008-sp1-reducing-project-to-project-references-in-build-log-kb958845.aspx#comments</comments><description>&lt;p&gt;From &lt;a href="http://blogs.msdn.com/aaronhallberg/archive/2009/01/30/targetsnotlogged-hotfix-available.aspx" target="_blank"&gt;Aaron Hallberg blog&lt;/a&gt;:&lt;a href="http://msmvps.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/vstsblog/VS08TeamSysTFS_5F00_v_5F00_rgb_5F00_2_5F00_4E91E261.jpg"&gt;&lt;img title="VS08-TeamSys-TFS_v_rgb_2" style="border-top-width:0px;display:inline;border-left-width:0px;border-bottom-width:0px;margin:0px 0px 7px 7px;border-right-width:0px;" height="102" alt="VS08-TeamSys-TFS_v_rgb_2" src="http://msmvps.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/vstsblog/VS08TeamSysTFS_5F00_v_5F00_rgb_5F00_2_5F00_thumb_5F00_76E114B5.jpg" width="200" align="right" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;[…] change in TFS Build SP1 which reduced build log noise by cutting out the build steps for project-to-project references […] the fix in SP1 &lt;strong&gt;didn&amp;#39;t actually fix the problem&lt;/strong&gt;, at least not completely.&lt;/p&gt;    &lt;p&gt;[…] As such, if a project was referenced by 10 other projects the fix in SP1 would reduce the number of spurious build steps from 10*3 to 9*3 rather than removing them altogether.&lt;/p&gt; &lt;/blockquote&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;strong&gt;A hotfix is finally available&lt;/strong&gt; that will address the remaining parts of the problem […]&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;VSTS MVP colleague &lt;a href="http://www.olausson.net/blog/" target="_blank"&gt;Mathias Olausson&lt;/a&gt; reports:&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;“before SP1 the build time was about 2h 30 min, with SP1 build time in average 65 minutes and with the build hotfix we’re now down to &lt;strong&gt;less than 40 minutes&lt;/strong&gt;. The build log has changed from 5500 lines down to 550.”&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Download hotfix: &lt;a href="http://code.msdn.microsoft.com/KB958845" target="_blank"&gt;TFSBuild TargetsNotLogged property fails to cut down noisy builds&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Additional Info: &lt;a href="http://support.microsoft.com/kb/958845" target="_blank"&gt;KB article 958845&lt;/a&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1667621" width="1" height="1"&gt;</description><category domain="http://msmvps.com/blogs/vstsblog/archive/tags/TFS+IT+Administration/default.aspx">TFS IT Administration</category><category domain="http://msmvps.com/blogs/vstsblog/archive/tags/Team+Build+Server/default.aspx">Team Build Server</category><category domain="http://msmvps.com/blogs/vstsblog/archive/tags/Issues+and+Hotfixes/default.aspx">Issues and Hotfixes</category><category domain="http://msmvps.com/blogs/vstsblog/archive/tags/TFS+Installation+and+Configuration/default.aspx">TFS Installation and Configuration</category><category domain="http://msmvps.com/blogs/vstsblog/archive/tags/TFS+2008+SP1/default.aspx">TFS 2008 SP1</category></item><item><title>Turn off label deletion when deleting builds</title><link>http://msmvps.com/blogs/vstsblog/archive/2009/01/09/turn-off-label-deletion-when-deleting-builds.aspx</link><pubDate>Fri, 09 Jan 2009 00:50:10 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1659611</guid><dc:creator>neno</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/vstsblog/rsscomments.aspx?PostID=1659611</wfw:commentRss><wfw:comment xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/vstsblog/commentapi.aspx?PostID=1659611</wfw:comment><comments>http://msmvps.com/blogs/vstsblog/archive/2009/01/09/turn-off-label-deletion-when-deleting-builds.aspx#comments</comments><description>&lt;p&gt;By default a build label is deleted when the corresponding build gets deleted.&lt;/p&gt; &lt;p&gt;In TFS 2008 SP1 you can &lt;a href="http://blogs.msdn.com/buckh/archive/2008/10/20/tfs-2008-sp1-new-setting-to-delete-a-build-without-deleting-the-build-label.aspx"&gt;change that behavior&lt;/a&gt; by modifying the &lt;strong&gt;web.config&lt;/strong&gt; file (on the TFS AT in folder %ProgramFiles%\Microsoft Visual Studio 2008 Team Foundation Server\Web Services) to:&lt;/p&gt; &lt;blockquote&gt; &lt;p&gt;&amp;lt;appSettings&amp;gt;&lt;br /&gt;&amp;nbsp; &amp;lt;add key=&amp;quot;&lt;strong&gt;PreserveLabelsOnBuildDeletion&lt;/strong&gt;&amp;quot; value=&amp;quot;&lt;strong&gt;true&lt;/strong&gt;&amp;quot; /&amp;gt;&lt;br /&gt;&amp;lt;/appSettings&amp;gt;&lt;/p&gt;&lt;/blockquote&gt; &lt;p&gt;&lt;a href="http://msmvps.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/vstsblog/PreserveLabelsOnBuildDeletion_5F00_4.png"&gt;&lt;img style="border-right:0px;border-top:0px;border-left:0px;border-bottom:0px;" height="106" alt="PreserveLabelsOnBuildDeletion" src="http://msmvps.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/vstsblog/PreserveLabelsOnBuildDeletion_5F00_thumb_5F00_1.png" width="640" border="0" /&gt;&lt;/a&gt;  &lt;p&gt;(Thanks to &lt;a href="http://blogs.msdn.com/buckh/"&gt;Buck Hodges&lt;/a&gt; for this tip).&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1659611" width="1" height="1"&gt;</description><category domain="http://msmvps.com/blogs/vstsblog/archive/tags/Team+Foundation+Server+_2800_TFS_2900_/default.aspx">Team Foundation Server (TFS)</category><category domain="http://msmvps.com/blogs/vstsblog/archive/tags/Tips+and+Tricks/default.aspx">Tips and Tricks</category><category domain="http://msmvps.com/blogs/vstsblog/archive/tags/For+Release+Managers/default.aspx">For Release Managers</category><category domain="http://msmvps.com/blogs/vstsblog/archive/tags/Team+Build+Server/default.aspx">Team Build Server</category><category domain="http://msmvps.com/blogs/vstsblog/archive/tags/TFS+Installation+and+Configuration/default.aspx">TFS Installation and Configuration</category><category domain="http://msmvps.com/blogs/vstsblog/archive/tags/TFS+2008+SP1/default.aspx">TFS 2008 SP1</category></item><item><title>Facts about Running Builds in Parallel with Team Build</title><link>http://msmvps.com/blogs/vstsblog/archive/2008/07/09/facts-about-running-builds-in-parallel-with-team-build.aspx</link><pubDate>Wed, 09 Jul 2008 19:57:02 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1640029</guid><dc:creator>neno</dc:creator><slash:comments>2</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/vstsblog/rsscomments.aspx?PostID=1640029</wfw:commentRss><wfw:comment xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/vstsblog/commentapi.aspx?PostID=1640029</wfw:comment><comments>http://msmvps.com/blogs/vstsblog/archive/2008/07/09/facts-about-running-builds-in-parallel-with-team-build.aspx#comments</comments><description>&lt;p&gt;TeamBuild&lt;/p&gt; &lt;ul&gt; &lt;li&gt;can build &lt;strong&gt;&lt;u&gt;one&lt;/u&gt;&lt;/strong&gt; build definition from a single Team Project at a time.&lt;/li&gt; &lt;li&gt;can build &lt;strong&gt;&lt;u&gt;multiple&lt;/u&gt;&lt;/strong&gt; build definitions from different Team Project.&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;MSBuild&lt;/p&gt; &lt;ul&gt; &lt;li&gt;has the capability to &lt;a href="http://blogs.msdn.com/msbuild/archive/2007/04/26/building-projects-in-parallel.aspx"&gt;use multiple CPUs to build projects in parallel&lt;/a&gt; and therefore speed up your builds.&lt;/li&gt; &lt;li&gt;This &lt;a href="http://blogs.msdn.com/aaronhallberg/archive/2007/06/20/team-build-and-multiproc-msbuild.aspx"&gt;multiproc feature can be leveraged in your Team Builds&lt;/a&gt;.&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;Thanks &lt;a href="http://blogs.msdn.com/granth/archive/2008/06/26/parallel-builds-of-solutions-within-one-team-project.aspx"&gt;Grant&lt;/a&gt; for pointing out those facts.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1640029" width="1" height="1"&gt;</description><category domain="http://msmvps.com/blogs/vstsblog/archive/tags/For+Developers/default.aspx">For Developers</category><category domain="http://msmvps.com/blogs/vstsblog/archive/tags/TFS+2008/default.aspx">TFS 2008</category><category domain="http://msmvps.com/blogs/vstsblog/archive/tags/For+Release+Managers/default.aspx">For Release Managers</category><category domain="http://msmvps.com/blogs/vstsblog/archive/tags/Team+Build+Server/default.aspx">Team Build Server</category><category domain="http://msmvps.com/blogs/vstsblog/archive/tags/TFS+Server+Management/default.aspx">TFS Server Management</category><category domain="http://msmvps.com/blogs/vstsblog/archive/tags/VSTS/default.aspx">VSTS</category></item><item><title>Screen Gallery: Installing Team Build 2008</title><link>http://msmvps.com/blogs/vstsblog/archive/2008/05/11/screen-gallery-installing-team-build-2008.aspx</link><pubDate>Sun, 11 May 2008 11:15:01 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1619567</guid><dc:creator>neno</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/vstsblog/rsscomments.aspx?PostID=1619567</wfw:commentRss><wfw:comment xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/vstsblog/commentapi.aspx?PostID=1619567</wfw:comment><comments>http://msmvps.com/blogs/vstsblog/archive/2008/05/11/screen-gallery-installing-team-build-2008.aspx#comments</comments><description>&lt;p&gt;Screenshots from a successful Team Build installation&lt;/p&gt; &lt;p&gt;&lt;a href="http://msmvps.com/blogs/vstsblog/WindowsLiveWriter/ScreenGalleryInstallingTeamBuild2008_B9F1/Image-0052_2.png"&gt;&lt;img style="border-right:0px;border-top:0px;border-left:0px;border-bottom:0px;" height="197" alt="Image-0052" src="http://msmvps.com/blogs/vstsblog/WindowsLiveWriter/ScreenGalleryInstallingTeamBuild2008_B9F1/Image-0052_thumb.png" width="244" border="0" /&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;&lt;a href="http://msmvps.com/blogs/vstsblog/WindowsLiveWriter/ScreenGalleryInstallingTeamBuild2008_B9F1/Image-0053_2.png"&gt;&lt;img style="border-right:0px;border-top:0px;border-left:0px;border-bottom:0px;" height="230" alt="Image-0053" src="http://msmvps.com/blogs/vstsblog/WindowsLiveWriter/ScreenGalleryInstallingTeamBuild2008_B9F1/Image-0053_thumb.png" width="244" border="0" /&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;&lt;a href="http://msmvps.com/blogs/vstsblog/WindowsLiveWriter/ScreenGalleryInstallingTeamBuild2008_B9F1/Image-0054_2.png"&gt;&lt;img style="border-right:0px;border-top:0px;border-left:0px;border-bottom:0px;" height="230" alt="Image-0054" src="http://msmvps.com/blogs/vstsblog/WindowsLiveWriter/ScreenGalleryInstallingTeamBuild2008_B9F1/Image-0054_thumb.png" width="244" border="0" /&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;&lt;a href="http://msmvps.com/blogs/vstsblog/WindowsLiveWriter/ScreenGalleryInstallingTeamBuild2008_B9F1/Image-0055_2.png"&gt;&lt;img style="border-right:0px;border-top:0px;border-left:0px;border-bottom:0px;" height="230" alt="Image-0055" src="http://msmvps.com/blogs/vstsblog/WindowsLiveWriter/ScreenGalleryInstallingTeamBuild2008_B9F1/Image-0055_thumb.png" width="244" border="0" /&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;a href="http://msmvps.com/blogs/vstsblog/WindowsLiveWriter/ScreenGalleryInstallingTeamBuild2008_B9F1/Image-0056_2.png"&gt;&lt;img style="border-right:0px;border-top:0px;border-left:0px;border-bottom:0px;" height="230" alt="Image-0056" src="http://msmvps.com/blogs/vstsblog/WindowsLiveWriter/ScreenGalleryInstallingTeamBuild2008_B9F1/Image-0056_thumb.png" width="244" border="0" /&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;a href="http://msmvps.com/blogs/vstsblog/WindowsLiveWriter/ScreenGalleryInstallingTeamBuild2008_B9F1/Image-0057_2.png"&gt;&lt;img style="border-right:0px;border-top:0px;border-left:0px;border-bottom:0px;" height="230" alt="Image-0057" src="http://msmvps.com/blogs/vstsblog/WindowsLiveWriter/ScreenGalleryInstallingTeamBuild2008_B9F1/Image-0057_thumb.png" width="244" border="0" /&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;a href="http://msmvps.com/blogs/vstsblog/WindowsLiveWriter/ScreenGalleryInstallingTeamBuild2008_B9F1/Image-0058_2.png"&gt;&lt;img style="border-right:0px;border-top:0px;border-left:0px;border-bottom:0px;" height="230" alt="Image-0058" src="http://msmvps.com/blogs/vstsblog/WindowsLiveWriter/ScreenGalleryInstallingTeamBuild2008_B9F1/Image-0058_thumb.png" width="244" border="0" /&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;a href="http://msmvps.com/blogs/vstsblog/WindowsLiveWriter/ScreenGalleryInstallingTeamBuild2008_B9F1/Image-0059_2.png"&gt;&lt;img style="border-right:0px;border-top:0px;border-left:0px;border-bottom:0px;" height="230" alt="Image-0059" src="http://msmvps.com/blogs/vstsblog/WindowsLiveWriter/ScreenGalleryInstallingTeamBuild2008_B9F1/Image-0059_thumb.png" width="244" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1619567" width="1" height="1"&gt;</description><category domain="http://msmvps.com/blogs/vstsblog/archive/tags/TFS+IT+Administration/default.aspx">TFS IT Administration</category><category domain="http://msmvps.com/blogs/vstsblog/archive/tags/Screen+Galleries/default.aspx">Screen Galleries</category><category domain="http://msmvps.com/blogs/vstsblog/archive/tags/For+Release+Managers/default.aspx">For Release Managers</category><category domain="http://msmvps.com/blogs/vstsblog/archive/tags/Team+Build+Server/default.aspx">Team Build Server</category></item><item><title>TFS 2008: Team Build doesn't get subfolders of team build type folder by default</title><link>http://msmvps.com/blogs/vstsblog/archive/2008/03/16/tfs-2008-team-build-doesn-t-get-subfolders-of-team-build-type-folder-by-default.aspx</link><pubDate>Sun, 16 Mar 2008 01:05:03 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1544136</guid><dc:creator>neno</dc:creator><slash:comments>1</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/vstsblog/rsscomments.aspx?PostID=1544136</wfw:commentRss><wfw:comment xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/vstsblog/commentapi.aspx?PostID=1544136</wfw:comment><comments>http://msmvps.com/blogs/vstsblog/archive/2008/03/16/tfs-2008-team-build-doesn-t-get-subfolders-of-team-build-type-folder-by-default.aspx#comments</comments><description>&lt;p&gt;In TFS 2005 subfolders of your team build type folder were copied recursively to the build temp directory. In TFS 2008 only the contents w/o recursion is copied.&lt;/p&gt; &lt;p&gt;To change this behavior, &lt;a href="http://blogs.msdn.com/aaronhallberg/archive/2008/02/12/modifying-the-configurationfolderpath-recursiontype-in-team-build-2008.aspx" target="_blank"&gt;Aaron tells us&lt;/a&gt;, you need to modify the following line&lt;/p&gt; &lt;blockquote&gt; &lt;p&gt;&amp;lt;add key=&amp;quot;ConfigurationFolderRecursionType&amp;quot; value=&amp;quot;&lt;strong&gt;Full&lt;/strong&gt;&amp;quot; /&amp;gt;&lt;/p&gt;&lt;/blockquote&gt; &lt;p&gt;in the TfsBuildService.exe.config on your build machine.&lt;/p&gt; &lt;p&gt;Enjoy!&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1544136" width="1" height="1"&gt;</description><category domain="http://msmvps.com/blogs/vstsblog/archive/tags/Team+Foundation+Server+_2800_TFS_2900_/default.aspx">Team Foundation Server (TFS)</category><category domain="http://msmvps.com/blogs/vstsblog/archive/tags/Team+Foundation+Version+Control/default.aspx">Team Foundation Version Control</category><category domain="http://msmvps.com/blogs/vstsblog/archive/tags/TFS+2008/default.aspx">TFS 2008</category><category domain="http://msmvps.com/blogs/vstsblog/archive/tags/For+Release+Managers/default.aspx">For Release Managers</category><category domain="http://msmvps.com/blogs/vstsblog/archive/tags/Team+Build+Server/default.aspx">Team Build Server</category></item><item><title>Documentation: Team Foundation Server SDK (online version)</title><link>http://msmvps.com/blogs/vstsblog/archive/2008/02/23/documentation-team-foundation-server-sdk-online-version.aspx</link><pubDate>Sat, 23 Feb 2008 13:55:34 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1522538</guid><dc:creator>neno</dc:creator><slash:comments>1</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/vstsblog/rsscomments.aspx?PostID=1522538</wfw:commentRss><wfw:comment xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/vstsblog/commentapi.aspx?PostID=1522538</wfw:comment><comments>http://msmvps.com/blogs/vstsblog/archive/2008/02/23/documentation-team-foundation-server-sdk-online-version.aspx#comments</comments><description>&lt;p&gt;From the contents: &lt;/p&gt; &lt;blockquote&gt; &lt;ul&gt; &lt;li&gt;Team Foundation Server Extensibility&lt;/li&gt; &lt;li&gt;Team Foundation Server SDK Architecture&lt;/li&gt; &lt;li&gt;How to: Run Team Foundation Server SDK Samples&lt;/li&gt; &lt;li&gt;Team Foundation Core Services&lt;/li&gt; &lt;li&gt;Work Item Tracking Extensibility&lt;/li&gt; &lt;li&gt;Source Control Extensibility&lt;/li&gt; &lt;li&gt;Data Warehouse Extensibility&lt;/li&gt; &lt;li&gt;Reference for Team Foundation Server SDK&lt;/li&gt;&lt;/ul&gt;&lt;/blockquote&gt; &lt;p&gt;Link: &lt;a title="http://msdn2.microsoft.com/en-us/library/bb130146(VS.80).aspx" href="http://msdn2.microsoft.com/en-us/library/bb130146(VS.80).aspx"&gt;http://msdn2.microsoft.com/en-us/library/bb130146(VS.80).aspx&lt;/a&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1522538" width="1" height="1"&gt;</description><category domain="http://msmvps.com/blogs/vstsblog/archive/tags/For+Developers/default.aspx">For Developers</category><category domain="http://msmvps.com/blogs/vstsblog/archive/tags/Team+Foundation+Server+_2800_TFS_2900_/default.aspx">Team Foundation Server (TFS)</category><category domain="http://msmvps.com/blogs/vstsblog/archive/tags/Third-Party+Solutions/default.aspx">Third-Party Solutions</category><category domain="http://msmvps.com/blogs/vstsblog/archive/tags/TFS+Extensibility/default.aspx">TFS Extensibility</category><category domain="http://msmvps.com/blogs/vstsblog/archive/tags/Training+and+Learning/default.aspx">Training and Learning</category><category domain="http://msmvps.com/blogs/vstsblog/archive/tags/Team+Foundation+Version+Control/default.aspx">Team Foundation Version Control</category><category domain="http://msmvps.com/blogs/vstsblog/archive/tags/TFS+2005/default.aspx">TFS 2005</category><category domain="http://msmvps.com/blogs/vstsblog/archive/tags/TFS+2008/default.aspx">TFS 2008</category><category domain="http://msmvps.com/blogs/vstsblog/archive/tags/Team+Build+Server/default.aspx">Team Build Server</category><category domain="http://msmvps.com/blogs/vstsblog/archive/tags/TFS+Server+Management/default.aspx">TFS Server Management</category><category domain="http://msmvps.com/blogs/vstsblog/archive/tags/TFS+Process+Customization/default.aspx">TFS Process Customization</category></item><item><title>How code churn is calculated in TFS 2005/2008</title><link>http://msmvps.com/blogs/vstsblog/archive/2008/02/23/how-code-churn-is-calculated-in-tfs-2005-2008.aspx</link><pubDate>Sat, 23 Feb 2008 13:51:28 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1522536</guid><dc:creator>neno</dc:creator><slash:comments>1</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/vstsblog/rsscomments.aspx?PostID=1522536</wfw:commentRss><wfw:comment xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/vstsblog/commentapi.aspx?PostID=1522536</wfw:comment><comments>http://msmvps.com/blogs/vstsblog/archive/2008/02/23/how-code-churn-is-calculated-in-tfs-2005-2008.aspx#comments</comments><description>&lt;p&gt;Code churn [1] in TFS 2005 and TFS 2008 is calculated using a very simple algorithm: inserted + changed + deleted lines [2].&lt;/p&gt; &lt;p&gt;This is done independently of the contents of the line, which means that everything - incl. comments, blank lines, etc. - is counted.&lt;/p&gt; &lt;p&gt;--&lt;/p&gt; &lt;p&gt;[1] &lt;a title="http://blogs.msdn.com/mohamedg/archive/2007/12/04/code-churn.aspx" href="http://blogs.msdn.com/mohamedg/archive/2007/12/04/code-churn.aspx"&gt;http://blogs.msdn.com/mohamedg/archive/2007/12/04/code-churn.aspx&lt;/a&gt;&lt;/p&gt; &lt;p&gt;[2] &lt;a title="http://msdn2.microsoft.com/en-us/library/ms244698(VS.80).aspx" href="http://msdn2.microsoft.com/en-us/library/ms244698(VS.80).aspx"&gt;http://msdn2.microsoft.com/en-us/library/ms244698(VS.80).aspx&lt;/a&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1522536" width="1" height="1"&gt;</description><category domain="http://msmvps.com/blogs/vstsblog/archive/tags/For+Developers/default.aspx">For Developers</category><category domain="http://msmvps.com/blogs/vstsblog/archive/tags/Team+Foundation+Server+_2800_TFS_2900_/default.aspx">Team Foundation Server (TFS)</category><category domain="http://msmvps.com/blogs/vstsblog/archive/tags/TFS+2005/default.aspx">TFS 2005</category><category domain="http://msmvps.com/blogs/vstsblog/archive/tags/TFS+2008/default.aspx">TFS 2008</category><category domain="http://msmvps.com/blogs/vstsblog/archive/tags/VSTS+Development/default.aspx">VSTS Development</category><category domain="http://msmvps.com/blogs/vstsblog/archive/tags/Software+Quality/default.aspx">Software Quality</category><category domain="http://msmvps.com/blogs/vstsblog/archive/tags/For+Release+Managers/default.aspx">For Release Managers</category><category domain="http://msmvps.com/blogs/vstsblog/archive/tags/Team+Build+Server/default.aspx">Team Build Server</category><category domain="http://msmvps.com/blogs/vstsblog/archive/tags/TFS+Reporting/default.aspx">TFS Reporting</category><category domain="http://msmvps.com/blogs/vstsblog/archive/tags/Quality+Assurance+_2800_QA_2900_+with+VSTS/default.aspx">Quality Assurance (QA) with VSTS</category></item><item><title>Enable logging to troubleshooting Team System issues</title><link>http://msmvps.com/blogs/vstsblog/archive/2007/08/24/enable-logging-to-troubleshooting-team-system-issues.aspx</link><pubDate>Fri, 24 Aug 2007 15:07:53 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1135165</guid><dc:creator>neno</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/vstsblog/rsscomments.aspx?PostID=1135165</wfw:commentRss><wfw:comment xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/vstsblog/commentapi.aspx?PostID=1135165</wfw:comment><comments>http://msmvps.com/blogs/vstsblog/archive/2007/08/24/enable-logging-to-troubleshooting-team-system-issues.aspx#comments</comments><description>&lt;p&gt;Here&amp;rsquo;s a list of how to enable logging for the various client and server components of VIsual Studio Team System:&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;TFS Client (Visual Studio IDE and command line tools)&lt;/strong&gt;:&lt;br /&gt;devenv.exe.config (for Visual Studio IDE), tf.exe.config (for command line tools)&amp;nbsp;as described in &lt;a href="http://blogs.msdn.com/edhintz/archive/2007/03/30/tfs-client-tracing.aspx"&gt;Ed Hintz on TFS Client Tracing&lt;/a&gt;. If you mainly want to measure performance the &lt;a href="http://blogs.msdn.com/buckh/archive/2006/09/25/performance_dialog.aspx"&gt;web service performance dialog&lt;/a&gt; can be added as a trave listener and is very helpful in that case.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Team Foundation Server&lt;br /&gt;&lt;/strong&gt;You can turn on tracing &lt;a href="http://msdn2.microsoft.com/en-us/library/ms400784(VS.80).aspx"&gt;globally&lt;/a&gt; or for &lt;a href="http://msdn2.microsoft.com/en-us/library/ms400788(VS.80).aspx"&gt;specified components only&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Team Foundation Server Activity Logging&lt;/strong&gt;&lt;br /&gt;Records web service method calls. See &lt;a href="http://blogs.msdn.com/jefflu/archive/2005/08/11/450342.aspx"&gt;here&lt;/a&gt; how to enable and &lt;a href="http://blogs.gotdotnet.com/abhinaba/comments/507499.aspx"&gt;here&lt;/a&gt;, &lt;a href="http://blogs.msdn.com/jefflu/archive/2005/08/30/457923.aspx"&gt;here&lt;/a&gt; and &lt;a href="http://blogs.msdn.com/bharry/archive/2006/06/12/628583.aspx"&gt;here&lt;/a&gt; how to analyze the data.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Team Build Server&lt;/strong&gt;&lt;br /&gt;Look into the config file for instructions on how to enable tracing, typically found in: %ProgramFiles%\Microsoft Visual Studio 8\Common7\IDE\PrivateAssemblies\tfsbuildservice.exe.config.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Team Test Load Agent&lt;br /&gt;&lt;/strong&gt;You can turn on logging in the QTController.exe.config (for the Controller) and QTAgentService.exe.config (for the Agents). More information can be found &lt;a href="http://msdn2.microsoft.com/en-us/library/ms404660(VS.80).aspx"&gt;here&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;You might also be interested in&amp;nbsp;other&amp;nbsp;&lt;a href="http://blog.joycode.com/tingwang/articles/80349.aspx"&gt;useful logging options for .NET&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1135165" width="1" height="1"&gt;</description><category domain="http://msmvps.com/blogs/vstsblog/archive/tags/Team+Foundation+Server+_2800_TFS_2900_/default.aspx">Team Foundation Server (TFS)</category><category domain="http://msmvps.com/blogs/vstsblog/archive/tags/TFS+IT+Administration/default.aspx">TFS IT Administration</category><category domain="http://msmvps.com/blogs/vstsblog/archive/tags/Tips+and+Tricks/default.aspx">Tips and Tricks</category><category domain="http://msmvps.com/blogs/vstsblog/archive/tags/VSTS+Test/default.aspx">VSTS Test</category><category domain="http://msmvps.com/blogs/vstsblog/archive/tags/Team+Build+Server/default.aspx">Team Build Server</category></item><item><title>[Screen Gallery] Setting up a dedicated build machine: Installing &amp; Configuring Team Foundation Build</title><link>http://msmvps.com/blogs/vstsblog/archive/2007/05/01/screen-gallery-setting-up-a-dedicated-build-machine-installing-amp-configuring-team-foundation-build.aspx</link><pubDate>Tue, 01 May 2007 11:25:34 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:886090</guid><dc:creator>neno</dc:creator><slash:comments>1</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/vstsblog/rsscomments.aspx?PostID=886090</wfw:commentRss><wfw:comment xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/vstsblog/commentapi.aspx?PostID=886090</wfw:comment><comments>http://msmvps.com/blogs/vstsblog/archive/2007/05/01/screen-gallery-setting-up-a-dedicated-build-machine-installing-amp-configuring-team-foundation-build.aspx#comments</comments><description>&lt;p&gt;&lt;strong&gt;Note&lt;/strong&gt;: Make sure to read the &lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=e54bf6ff-026b-43a4-ade4-a690388f310e&amp;amp;DisplayLang=en" target="_blank"&gt;Installation Guide&lt;/a&gt; before installing this software.&lt;/p&gt; &lt;h4&gt;What do I need it for?&lt;/h4&gt; &lt;ul&gt; &lt;li&gt;You need&amp;nbsp;&amp;quot;&lt;strong&gt;Team Foundation Build&lt;/strong&gt;&amp;quot;&amp;nbsp;to set up a dedicated build server.&lt;/li&gt;&lt;/ul&gt; &lt;h4&gt;Why should I do that? Can&amp;#39;t I use the TFS itself?&lt;/h4&gt; &lt;ul&gt; &lt;li&gt;A build usually compiles code (which needs a lot of processor power). You don&amp;#39;t want your primary TFS to timeout while a build runs.&lt;/li&gt;&lt;/ul&gt; &lt;h4&gt;Where to find it?&lt;/h4&gt; &lt;ul&gt; &lt;li&gt;On the &lt;a href="http://msmvps.com/blogs/vstsblog/archive/2006/11/11/Happy-Buyer_3A00_-What_2700_s-in-the-TFS-product-box_3F00_.aspx"&gt;Team Foundation Server CD&lt;/a&gt; in the &lt;strong&gt;build &lt;/strong&gt;directory.&lt;/li&gt;&lt;/ul&gt; &lt;h4&gt;What do I need?&lt;/h4&gt; &lt;ul&gt; &lt;li&gt;Dedicated machine with Win XP Professional SP2, or Windows Server 2003 SP1 (Std./Ent.) or higher with .NET Framework 2.0 installed&amp;nbsp;(as listed &lt;a href="http://msdn2.microsoft.com/en-us/library/ms252483(VS.80).aspx"&gt;here&lt;/a&gt;). &lt;li&gt;Username and password of your TFS Service Account which needs to be entered during install.&lt;/li&gt;&lt;/ul&gt; &lt;h4&gt;What &lt;em&gt;&lt;strong&gt;must&lt;/strong&gt;&lt;/em&gt; be done prior to installing?&lt;/h4&gt; &lt;ul&gt; &lt;li&gt;Nothing, the cleaner the machine (clean&amp;nbsp;in the sense of&amp;nbsp;no additional software installed), the better...&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;&lt;a href="http://www.dotnet-online.de/blogimages/InstallingConfiguringTeamFoundationBuild_15C4/Image00001.png"&gt;&lt;img style="border-top-width:0px;border-left-width:0px;border-bottom-width:0px;border-right-width:0px;" height="213" src="http://www.dotnet-online.de/blogimages/InstallingConfiguringTeamFoundationBuild_15C4/Image0000.png" width="240" border="0" alt="" /&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;&lt;a href="http://www.dotnet-online.de/blogimages/InstallingConfiguringTeamFoundationBuild_15C4/Image00011.png"&gt;&lt;img style="border-top-width:0px;border-left-width:0px;border-bottom-width:0px;border-right-width:0px;" height="213" src="http://www.dotnet-online.de/blogimages/InstallingConfiguringTeamFoundationBuild_15C4/Image0001.png" width="240" border="0" alt="" /&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;&lt;a href="http://www.dotnet-online.de/blogimages/InstallingConfiguringTeamFoundationBuild_15C4/Image00021.png"&gt;&lt;img style="border-top-width:0px;border-left-width:0px;border-bottom-width:0px;border-right-width:0px;" height="213" src="http://www.dotnet-online.de/blogimages/InstallingConfiguringTeamFoundationBuild_15C4/Image0002.png" width="240" border="0" alt="" /&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;&lt;a href="http://www.dotnet-online.de/blogimages/InstallingConfiguringTeamFoundationBuild_15C4/Image00031.png"&gt;&lt;img style="border-top-width:0px;border-left-width:0px;border-bottom-width:0px;border-right-width:0px;" height="213" src="http://www.dotnet-online.de/blogimages/InstallingConfiguringTeamFoundationBuild_15C4/Image0003.png" width="240" border="0" alt="" /&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;&lt;a href="http://www.dotnet-online.de/blogimages/InstallingConfiguringTeamFoundationBuild_15C4/Image00041.png"&gt;&lt;img style="border-top-width:0px;border-left-width:0px;border-bottom-width:0px;border-right-width:0px;" height="213" src="http://www.dotnet-online.de/blogimages/InstallingConfiguringTeamFoundationBuild_15C4/Image0004.png" width="240" border="0" alt="" /&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;&lt;a href="http://www.dotnet-online.de/blogimages/InstallingConfiguringTeamFoundationBuild_15C4/Image00051.png"&gt;&lt;img style="border-top-width:0px;border-left-width:0px;border-bottom-width:0px;border-right-width:0px;" height="213" src="http://www.dotnet-online.de/blogimages/InstallingConfiguringTeamFoundationBuild_15C4/Image0005.png" width="240" border="0" alt="" /&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;&lt;a href="http://www.dotnet-online.de/blogimages/InstallingConfiguringTeamFoundationBuild_15C4/Image00061.png"&gt;&lt;img style="border-top-width:0px;border-left-width:0px;border-bottom-width:0px;border-right-width:0px;" height="213" src="http://www.dotnet-online.de/blogimages/InstallingConfiguringTeamFoundationBuild_15C4/Image0006.png" width="240" border="0" alt="" /&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;&lt;a href="http://www.dotnet-online.de/blogimages/InstallingConfiguringTeamFoundationBuild_15C4/Image00071.png"&gt;&lt;img style="border-top-width:0px;border-left-width:0px;border-bottom-width:0px;border-right-width:0px;" height="213" src="http://www.dotnet-online.de/blogimages/InstallingConfiguringTeamFoundationBuild_15C4/Image0007.png" width="240" border="0" alt="" /&gt;&lt;/a&gt;&amp;nbsp;&lt;/p&gt; &lt;h4&gt;What &lt;strong&gt;&lt;em&gt;should&lt;/em&gt;&lt;/strong&gt; be done after it&amp;#39;s installed successfully?&lt;/h4&gt; &lt;ul&gt; &lt;li&gt;If you are running &lt;strong&gt;tests &lt;/strong&gt;as part of your build process, you have to install the Visual Studio Team Edition for Software Testers (VSTE/ST).  &lt;li&gt;If you are running &lt;strong&gt;static code analysis&lt;/strong&gt;&amp;nbsp;as part of your build process, you need to install the Visual Studio Team System for Software Developers (VSTE/SD).  &lt;li&gt;If you want to&amp;nbsp;automatically generate a &lt;strong&gt;deployment report&lt;/strong&gt; out of an deployment diagram as part of your build process, you&amp;#39;ll need to install the Visual Studio Team Edition for Software Architects (VSTE/SA).  &lt;li&gt;Of course you can alternatively install the Visual Studio &lt;strong&gt;Team Suite&lt;/strong&gt; instead of the individual Team Editions.  &lt;li&gt;If you use call &lt;strong&gt;further software&lt;/strong&gt; during the build process (like for example &lt;a href="http://ndoc.sourceforge.net/"&gt;NDoc&lt;/a&gt;, &lt;a href="http://ndoc.sourceforge.net/"&gt;Sandcastle&lt;/a&gt;, &lt;a href="http://nant.sourceforge.net/"&gt;NAnt&lt;/a&gt;, &lt;a href="http://www.finalbuilder.com"&gt;FinalBuilder&lt;/a&gt;, &lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=22914587-B4AD-4EAE-87CF-B14AE6A939B0"&gt;ILMerge&lt;/a&gt;, &lt;a href="http://www.preemptive.com/products/dotfuscator/"&gt;Dotfuscator&lt;/a&gt;, ...) make sure to install them as well.&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;&lt;a href="http://www.dotnet-online.de/blogimages/InstallingConfiguringTeamFoundationBuild_15C4/Image00081.png"&gt;&lt;img style="border-top-width:0px;border-left-width:0px;border-bottom-width:0px;border-right-width:0px;" height="182" src="http://www.dotnet-online.de/blogimages/InstallingConfiguringTeamFoundationBuild_15C4/Image0008.png" width="240" border="0" alt="" /&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;&lt;strong&gt;Comment by the author&lt;/strong&gt;: Of course it&amp;#39;s not nice &amp;amp; clean to see Visual Studio on a build box and I&amp;#39;m sure Microsoft will fix this by providing a lightweight, xcopy-deployable Test runtime in future.&lt;/p&gt; &lt;p&gt;&lt;strong&gt;Addendum&lt;/strong&gt;: We now have a solution we use internally for our customers which run large build labs in Virtual Environments where we don&amp;#39;t install Visual Studio but just a small MSTest runtime.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=886090" width="1" height="1"&gt;</description><category domain="http://msmvps.com/blogs/vstsblog/archive/tags/Team+Foundation+Server+_2800_TFS_2900_/default.aspx">Team Foundation Server (TFS)</category><category domain="http://msmvps.com/blogs/vstsblog/archive/tags/TFS+IT+Administration/default.aspx">TFS IT Administration</category><category domain="http://msmvps.com/blogs/vstsblog/archive/tags/Screen+Galleries/default.aspx">Screen Galleries</category><category domain="http://msmvps.com/blogs/vstsblog/archive/tags/TFS+2005/default.aspx">TFS 2005</category><category domain="http://msmvps.com/blogs/vstsblog/archive/tags/For+Release+Managers/default.aspx">For Release Managers</category><category domain="http://msmvps.com/blogs/vstsblog/archive/tags/Team+Build+Server/default.aspx">Team Build Server</category></item><item><title>[Team Build] Why is the "DropBuild" target *after* the "AfterDropBuild" target?</title><link>http://msmvps.com/blogs/vstsblog/archive/2007/01/31/team-build-why-is-the-dropbuild-target-after-the-afterdropbuild-target.aspx</link><pubDate>Wed, 31 Jan 2007 14:55:19 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:531382</guid><dc:creator>neno</dc:creator><slash:comments>1</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/vstsblog/rsscomments.aspx?PostID=531382</wfw:commentRss><wfw:comment xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/vstsblog/commentapi.aspx?PostID=531382</wfw:comment><comments>http://msmvps.com/blogs/vstsblog/archive/2007/01/31/team-build-why-is-the-dropbuild-target-after-the-afterdropbuild-target.aspx#comments</comments><description>&lt;p&gt;People tend to ask me why the order for the build-in Team Build targets usually is:&lt;/p&gt; &lt;ul&gt; &lt;li&gt;BeforeSomething  &lt;li&gt;CoreSomething  &lt;li&gt;AfterSomething  &lt;li&gt;Something&lt;br&gt;&lt;br&gt;(Replace&amp;nbsp;"Something" with a action like "Get", "Compile", "DropBuild", or similar ...)&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;You can find the execution order of the Team Build Targets published &lt;a href="http://msdn2.microsoft.com/en-us/library/aa337604(vs.80).aspx"&gt;in the MSDN Library&lt;/a&gt;:&lt;/p&gt; &lt;blockquote&gt; &lt;p&gt;&lt;strong&gt;Order of Target Execution&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;The order of execution of the targets is in the following list.  &lt;ol&gt; &lt;li&gt; &lt;p&gt;BeforeEndToEndIteration&lt;/p&gt; &lt;li&gt; &lt;p&gt;BuildNumberOverrideTarget&lt;/p&gt; &lt;li&gt; &lt;p&gt;InitializeEndToEndIteration&lt;/p&gt; &lt;li&gt; &lt;p&gt;BeforeClean&lt;/p&gt; &lt;li&gt; &lt;p&gt;CoreClean&lt;/p&gt; &lt;li&gt; &lt;p&gt;AfterClean&lt;/p&gt; &lt;li&gt; &lt;p&gt;Clean&lt;/p&gt; &lt;li&gt; &lt;p&gt;InitializeBuild&lt;/p&gt; &lt;li&gt; &lt;p&gt;BeforeGet&lt;/p&gt; &lt;li&gt; &lt;p&gt;BeforeLabel&lt;/p&gt; &lt;li&gt; &lt;p&gt;Label&lt;/p&gt; &lt;li&gt; &lt;p&gt;AfterLabel&lt;/p&gt; &lt;li&gt; &lt;p&gt;InitializeWorkspace&lt;/p&gt; &lt;li&gt; &lt;p&gt;CoreGet&lt;/p&gt; &lt;li&gt; &lt;p&gt;AfterGet&lt;/p&gt; &lt;li&gt; &lt;p&gt;PreBuild&lt;/p&gt; &lt;li&gt; &lt;p&gt;BeforeCompile&lt;/p&gt; &lt;li&gt; &lt;p&gt;CoreCompile&lt;/p&gt; &lt;li&gt; &lt;p&gt;AfterCompile&lt;/p&gt; &lt;li&gt; &lt;p&gt;Compile&lt;/p&gt; &lt;li&gt; &lt;p&gt;GetChangeSetsAndUpdateWorkItems&lt;/p&gt; &lt;li&gt; &lt;p&gt;PostBuild&lt;/p&gt; &lt;li&gt; &lt;p&gt;BeforeTest&lt;/p&gt; &lt;li&gt; &lt;p&gt;CoreTest&lt;/p&gt; &lt;li&gt; &lt;p&gt;Test&lt;/p&gt; &lt;li&gt; &lt;p&gt;AfterTest&lt;/p&gt; &lt;li&gt; &lt;p&gt;PackageBinaries&lt;/p&gt; &lt;li&gt; &lt;p&gt;TeamBuild&lt;/p&gt; &lt;li&gt; &lt;p&gt;BeforeDropBuild&lt;/p&gt; &lt;li&gt; &lt;p&gt;CoreDropBuild&lt;/p&gt; &lt;li&gt; &lt;p&gt;CopyLogFiles&lt;/p&gt; &lt;li&gt; &lt;p&gt;AfterDropBuild&lt;/p&gt; &lt;li&gt; &lt;p&gt;DropBuild&lt;/p&gt; &lt;li&gt; &lt;p&gt;EndToEndIteration&lt;/p&gt; &lt;li&gt; &lt;p&gt;AfterEndToEndIteration&lt;/p&gt;&lt;/li&gt;&lt;/ol&gt;&lt;/blockquote&gt; &lt;p&gt;Let's look at the four targets related to copying the files to the drop location (BeforeDropBuild, CoreDropBuild, AfterDropBuild, DropBuild). &lt;strong&gt;DropBuild&lt;/strong&gt; is the target you would specify on the command line if you only want to drop the build to the drop location and is defined as follows:&lt;/p&gt; &lt;blockquote&gt; &lt;p&gt;&lt;em&gt;&lt;font color="#008000"&gt;&amp;lt;!-- Batch target for copy --&amp;gt;&lt;br&gt;&lt;/font&gt;&lt;/em&gt;&amp;lt;Target Name="DropBuild" &lt;br&gt;DependsOnTargets="$(DropBuildDependsOn)" /&amp;gt; &lt;/p&gt;&lt;/blockquote&gt; &lt;p&gt;and the DropBuildDependsOn property looks like this:&lt;/p&gt; &lt;blockquote&gt; &lt;p&gt;&amp;lt;PropertyGroup&amp;gt;&lt;br&gt;&amp;nbsp; &amp;lt;DropBuildDependsOn&amp;gt;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; BeforeDropBuild;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; CoreDropBuild;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; CopyLogFiles;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; AfterDropBuild;&lt;br&gt;&amp;nbsp; &amp;lt;/DropBuildDependsOn&amp;gt;&lt;br&gt;&amp;lt;/PropertyGroup&amp;gt;&lt;/p&gt;&lt;/blockquote&gt; &lt;p&gt;So it's intentially empty, because a&amp;nbsp;build target can only specify on which targets it depends. So DropBuild is only a structure element to ensure Before, Core And AfterDropBuild will be invoked in the designated order.&lt;/p&gt; &lt;p&gt;&lt;strong&gt;Before &lt;/strong&gt;and &lt;strong&gt;AfterDropBuild&lt;/strong&gt; are empty as well (waiting for you to override them if you want to customize the process):&lt;/p&gt; &lt;blockquote&gt; &lt;p&gt;&lt;font color="#008000"&gt;&lt;em&gt;&amp;lt;!-- Override this target to plugin custom tasks before DropBuild --&amp;gt;&lt;/em&gt;&lt;/font&gt;&lt;br&gt;&amp;lt;Target Name="BeforeDropBuild" /&amp;gt; &lt;/p&gt;&lt;/blockquote&gt; &lt;blockquote&gt; &lt;p&gt;&lt;em&gt;&lt;font color="#008000"&gt;&amp;lt;!-- Override this target to plugin custom tasks after DropBuild target --&amp;gt;&lt;/font&gt;&lt;/em&gt;&lt;br&gt;&amp;lt;Target Name="AfterDropBuild" /&amp;gt; &lt;/p&gt;&lt;/blockquote&gt; &lt;p&gt;And finally &lt;strong&gt;CoreDropBuild&lt;/strong&gt; does the work (and it's recommended NOT to override this target)&lt;/p&gt; &lt;blockquote&gt; &lt;p&gt;&lt;font color="#008000"&gt;&lt;em&gt;&amp;lt;&amp;lt;!-- Task will copy binaries and log file to drop location. Please note that this is presently for only non desktop scenarios --&amp;gt;&lt;/em&gt;&lt;/font&gt;&lt;br&gt;&amp;lt;Target Name="CoreDropBuild"&lt;br&gt;Condition=" '$(IsDesktopBuild)'!='true' and '$(SkipDropBuild)'!='true' "&lt;br&gt;DependsOnTargets="$(CoreDropBuildDependsOn)" &amp;gt; &lt;/p&gt; &lt;p&gt;&lt;em&gt;&lt;font color="#008000"&gt;&amp;lt;!-- Copy output assemblies --&amp;gt;&lt;br&gt;&lt;/font&gt;&lt;/em&gt;&amp;lt;CreateItem Include="$(BinariesRoot)\**\*.*" &amp;gt;&lt;br&gt;&amp;lt;Output ItemName="FilesToCopy" TaskParameter="Include" /&amp;gt;&lt;br&gt;&amp;lt;/CreateItem&amp;gt;  &lt;p&gt;&amp;lt;Copy&lt;br&gt;SourceFiles="@(FilesToCopy)"&lt;br&gt;DestinationFiles="@(FilesToCopy -&amp;gt;'$(DropLocation)\$(BuildNumber)\%(RecursiveDir)%(Filename)%(Extension)')"&lt;br&gt;ContinueOnError="true" /&amp;gt;  &lt;p&gt;&amp;lt;/Target&amp;gt;&lt;/p&gt;&lt;/blockquote&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=531382" width="1" height="1"&gt;</description><category domain="http://msmvps.com/blogs/vstsblog/archive/tags/Build+Automation/default.aspx">Build Automation</category><category domain="http://msmvps.com/blogs/vstsblog/archive/tags/For+Release+Managers/default.aspx">For Release Managers</category><category domain="http://msmvps.com/blogs/vstsblog/archive/tags/Team+Build+Server/default.aspx">Team Build Server</category></item></channel></rss>