проблемный фон
Я работаю над проектом на C #, который использует DevOps Azure для CI. У меня есть файл Power Shell, который запускается при переносе проекта в Azure. Соответствующая часть файла сборки:
# $buildTools is the path to MSBuild.exe
# $solution is the path to the project's .sln file
& $buildTools $solution /t:Clean,Build /p:Configuration=Release,Platform=x86
if ($LASTEXITCODE -eq 0) {
Write-Host 'Build completed successfully!'
} else {
Write-Host '##vso[task.logissue type=error;]There were errors during the build of the application'
}
Задача
В настоящее время $LASTEXITCODE
может быть 0 (no errors)
или 1 (error)
. Если код выхода равен 0, все в порядке, а Azure показывает зеленый проходной значок; если это 1, Azure показывает красный значок ошибки. Однако если в сборке есть предупреждения, они отображаются в журналах, а Azure показывает зеленый значок.
Цель
Моя цель - заставить Azure отображать желтый / оранжевый значок предупреждения при наличии предупреждений. Это возможно и как? Большое спасибо за ваше время!
Попытка решения
В свойствах проекта C # Warning level
имеет значение 4
; поэтому я попробовал эту модификацию скрипта Power Shell, однако она не сработала.
& $buildTools $solution 4> 'warning.txt'
Обновление с решением
Благодаря ответу Д.Дж. ! Финальная строка сборки выглядит так:
# $warningsFile is a path to a file that will contain all the warnings
& $buildTools $solution /t:Clean,Build /p:Configuration=Release,Platform=x86 /fl1 "/flp1:$warningsFile;warningsonly"