Team Build
http://social.msdn.microsoft.com/Forums/en-US/tfsbuild/thread/618392e6-a108-4e70-898b-52ee6afc0600/
TeamBuild 2008 устанавливает IsDesktopBuild = false для сборок, запускаемых агентом сборки.Значение по умолчанию (если не задано в командной строке или в свойстве проекта) - true.Поведение TFS 2010 такое же, поэтому попробуйте что-то вроде:
<PostBuildEvent Condition=" '$(IsDesktopBuild)' == 'true' ">echo This is post-build</PostBuildEvent>
Хотя я слышал от некоторых людей, что он не работает, и есть альтернативное свойство - $ (BuildingInsideVisualStudio)- который может работать вместо этого.
Если ни одна из них не работает, вам, возможно, потребуется отредактировать определение сборки и настроить вызов msbuild самостоятельно.
NuGet 1.6
NuGet 1.6 также имеет файл msbuild, который может создавать файлы nuget, на которые стоит обратить внимание.
snippet
<PackageOutputDir Condition="$(PackageOutputDir) == ''">$(TargetDir.Trim('\\'))</PackageOutputDir>
<BuildCommand>"$(NuGetExePath)" pack "$(ProjectPath)" -p Configuration=$(Configuration) -o "$(PackageOutputDir)" -symbols</BuildCommand>