4

拥有一个使用 Teamcity 和 Octopus 的 CI 管道部署和构建用 Cake 编写的脚本,我希望能够显示构建脚本生成的错误消息。

现在显示的消息是:

 Exit code 1 (new)

在此处输入图像描述 为了能够看到真正的错误消息,必须查看构建日志并对其进行解析。

因此,即使在使用构建脚本时,我也希望能够在概览页面和错误列表中显示构建结果,如下图所示: 我知道 Cake 提供与 TeamCity 集成的支持,但文档和示例不支持这么简单。在此处输入图像描述

谁能提供一些关于这个主题的有用信息?

4

1 回答 1

4

Cake 实现了一种能够编写构建问题的方法

TeamCityProvider​.BuildProblem(string, ​string)

查看此提供程序的源代码,我可以确定这将构建一个字符串以输出,该字符串符合TeamCity 文档中指定的构建脚本交互,特别是报告构建问题

##teamcity[buildProblem description='<description>' identity='<identity>']

通过调用BuildProblem("Some message", "Some identity")这将输出

##teamcity[buildProblem description='Some Message' identity='Some identity']

然后,TeamCity 应该使构建失败并根据文档显示消息;

要直接从构建脚本失败构建,已报告构建问题。构建问题出现在构建结果页面上,并且还会影响构建状态文本。

您需要编辑 cake build 脚本以正确捕获异常并调用上述方法,因此它将正确写入输出流。

我可以使用 PowerShell 脚本复制此行为以将buildProblem消息写入输出流

在此处输入图像描述

然后,这将在概览页面的构建结果中显示消息

在此处输入图像描述

希望这可以帮助

于 2016-08-11T19:32:40.580 回答