Jenkins:如果叮当声分析器发现新的bug,如何将构建标记为不稳定
问题描述:
我已经在mac服务器上设置Jenkins CI,以使用Xcode Build和Clang Scan-Build插件为iOS项目执行自动构建/分析。我设置了电子邮件通知,通知用户是否使用可编辑电子邮件通知插件破坏了构建。但是,如果Clang扫描生成阶段检测到自上次提交后发现的新错误,我还想给用户发送电子邮件,这会导致我的问题:如果发现新bug,我会如何将clang插件标记为不稳定/失败已经推出?(我想告诉用户自上次提交以来是否引入了新的错误,而不仅仅是超出了阈值。)Jenkins:如果叮当声分析器发现新的bug,如何将构建标记为不稳定
我非常确定这是可能的,因为clang插件已经提供了铿锵虫从以前的版本计算结果。
在此先感谢您的帮助。
答
不确定这是否正是您正在寻找的内容,但我使用编译器警告插件来改变我的CLANG-LLVM编译器警告。这有在詹金斯系统级进行定义(GUI依然,但不是每个项目):
Name: CLANG-LLVM
Link Name: Compiler Warnings
Trend Report Name: Warning trend
Regular Expression: ^(.+?):(\d+):(?:\d+:)?(?:\{\d:-\}+)?(?:.*) (warning|error): (.*)$
Mapping Script:
import hudson.plugins.warnings.parser.Warning
String fileName = matcher.group(1)
String lineNumber = matcher.group(2)
String category = matcher.group(3)
String message = matcher.group(4)
if (message.contains('deprecated')) category='deprecation';
return new Warning(fileName, Integer.parseInt(lineNumber), "Clang-LLVM", category, message);
Example Log Message:
/Development/foo.m:4634:7: warning: 'runModalForDirectory:file:' is deprecated [-Wdeprecated-declarations,6]
然后我们运行在控制台日志的生成后扫描。 而且,在警告的Advanced...
部分中,您可以告诉它如何解释它们以用于“健康警告”和状态设置。
谢谢!添加编译器警告插件允许我扫描警告,并在引入新警告时标记为不稳定。 –