У меня есть следующий msbuild goop:
<MSBuild Projects="$(MySLN)" Targets="Build" />
<!--count all warning and fail if > 20-->
<Exec WorkingDirectory="$(BuildFolder)"
IgnoreExitCode="true"
Command="$(POWERSHELL) -command $host.SetShouldExit(([xml](get-content '$(LogsFolder)productbuild-results.xml')).SelectNodes('//warning').count)"
>
<Output PropertyName="BuildSLNWarningCount" TaskParameter="ExitCode" />
</Exec>
Теоретически это будет подсчитывать количество предупреждений в файле журнала, поэтому я могу прервать сборку, если их слишком много (> 20 в нашем случае).
Однако я не знаю, как заставить задачу MSBuild выводить файл журнала — отдельно от файла журнала, созданного из основного файла MSBuild, которым запускается эта задача. Кроме того, мне по-прежнему нужен основной файл журнала, содержащий полную информацию о сборке, поскольку он используется CCnet.
Это возможно?
Спасибо