正如@mghicks已经提到的,并不是每个插件都支持Jenkins管道。在这种情况下,Text Finder插件不支持它。例如,您可以为此编写自己的groovy函数:
例如:
pipeline {
agent {
label {
label "master"
}
}
stages {
stage ('Check logs') {
steps {
filterLogs ('ERROR', 2)
}
}
}
}
我们正在调用filterLogs函数,并提供参数“ ERROR”(在您的日志中搜索ERROR),并定义单词“ ERROR”的出现(当ERROR出现2次时,会使工作不稳定) ):
我们的filterLogs函数如下所示:
#!/usr/bin/env groovy
import org.apache.commons.lang.StringUtils
def call(String filter_string, int occurrence) {
def logs = currentBuild.rawBuild.getLog(10000).join('\n')
int count = StringUtils.countMatches(logs, filter_string);
if (count > occurrence -1) {
currentBuild.result='UNSTABLE'
}
}
如果不使用共享库或其他东西,也可以只在管道内部实现该功能。