有没有办法显示
flutter analyze
字符串其在Jenkins构建期间在结果页面上执行,例如,此图适用于Android:x1c 0d1x的数据我们可以将Warnings-NG插件与recordIssues-函数一起使用吗?该功能如何配置?
recordIssues
anauzrmj1#
我通过配置一个定制的Groovy Parser解决了这个问题,如下所述:1.后藤Manage Jenkins -> System -> Section“Groovy Based Warnings Parsers”1.点击添加1.配置:名称和ID是任意值。正则表达式:^\[(.*)\] (.*) \((.*):(\d*):(\d*)\)Map脚本:
^\[(.*)\] (.*) \((.*):(\d*):(\d*)\)
import edu.hm.hafner.analysis.Severity String message = matcher.group(2) String file = matcher.group(3) return builder .setFileName(file) .setMessage(message) .setCategory("flutter") .setLineStart(Integer.parseInt(matcher.group(4))) .setSeverity(Severity.WARNING_NORMAL) .buildOptional();
字符串日志消息示例:
[info] Missing a required trailing comma (/Users/user/Development/CICD/template-flutter/lib/main.dart:55:13) [info] Missing a required trailing comma (/Users/user/Development/CICD/template-flutter/lib/main.dart:105:16)
型保存更改。
在Jenkinsfile中,为声明性管道添加以下内容:
Jenkinsfile
stage('Static Analysis'){ steps { sh label: 'flutter analyze', script: 'fvm flutter analyze --write=flutter_analyze_report.txt || true' } post { always { recordIssues(tools: [groovyScript(id: 'flutter-analyze', name: 'Flutter Analyze', parserId: '<the id you have configured in system settings>', pattern: '**/flutter_analyze_report.txt')]) } } }
型
1条答案
按热度按时间anauzrmj1#
我通过配置一个定制的Groovy Parser解决了这个问题,如下所述:
1.后藤Manage Jenkins -> System -> Section“Groovy Based Warnings Parsers”
1.点击添加
1.配置:
名称和ID是任意值。正则表达式:
^\[(.*)\] (.*) \((.*):(\d*):(\d*)\)
Map脚本:字符串
日志消息示例:
型
保存更改。
使用Groovy解析器:
在
Jenkinsfile
中,为声明性管道添加以下内容:型