Вывод msbuild зависит от круиз-контроля.net
Когда я запускаю Cruise Control .Net, msbuild не работает так же, как когда я запускаю прямо из командной строки на той же машине с такими же точными параметрами. Что заставило меня задуматься об этом, так это то, что WebCompiler не работал, когда ccnet запустил msbuild для моего решения. Тем не менее, когда я запускаю из командной строки, сборки WebCompiler работает просто отлично. Я запустил с параметрами /verbosity: Diagnostic и /fl и заметил большую разницу в выводе между msbuild в командной строке и msbuild в ccnet. Мы также запускаем Rebuild, Release и "Любой процессор". У нас не установлена Visual Studio на сервере CI, только Microsoft Build Tools 2015.
Что такого особенного в том, как CCNet запускает msbuild???
Командная строка:
"C:\Program Files (x86)\MSBuild\14.0\Bin\msbuild" mysolution.sln /p:Configuration=Release /p:Platform="Any CPU" /tv:14.0 /t:Rebuild
vs. CruiseControl.Net:
<msbuild>
<buildArgs>/p:Configuration=Release /p:Platform="Any CPU" /tv:14.0</buildArgs>
<executable>C:\Program Files (x86)\MSBuild\14.0\Bin\MSBuild.exe</executable>
<targets>Rebuild</targets>
<projectFile>mysolution.sln</projectFile>
</msbuild>