如何在TeamCity的概述页面上显示msbuild错误

Ada*_*ski 8 powershell psake teamcity-7.1

我想将PowerShell与Psake和TeamCity配合使用来配置我的CI.我曾经使用标准的Msbuild运行程序,但现在我编写了自己的脚本来构建解决方案,但是当msbuild失败时我遇到了问题.

当我使用Msbuild runner并且构建失败时,然后在Overview页面上出现新的"Build errors"部分,我有来自msbuild的详细信息.但是当我编写自定义脚本时,我只得到错误"进程退出代码1",我不知道如何"创建"此构建错误部分.你知道怎么做吗?我知道我可以使用服务消息,但我无法处理来自msbuild的失败日志.

task compile {
try {
   exec { msbuild $code_dir\SampleSolution.sln /t:Build /p:Configuration=Release }
} catch {
   Write-Host $_ #only information that error occured, but without any msbui details
} }
Run Code Online (Sandbox Code Playgroud)

Edu*_*ort 3

您可以为 MSBuild 指定日志

解析日志中的错误或将整个日志附加为构建工件。

##teamcity[publishArtifacts '.\msbuild.log']
Run Code Online (Sandbox Code Playgroud)

如果构建失败,您可以使用以下消息

Write-Output "##teamcity[message text='MS Build failed' status='ERROR']"
Run Code Online (Sandbox Code Playgroud)

您可以在这里获取所有可以使用的消息