我必须读取Jenkins控制台输出并grep字符串为"%)"
的行。我可以使用以下代码grep该行:
def result = fileContents.findAll { it.contains('%)') }
println result*.toString()
输出:
× 35 of 45 failed (78%) 06:13 247 3 38 66 140
从上面的行中,我只需要获取和打印失败的%。也就是说。78,如果失败的百分比高于50%,则使Jenkins作业失败
有人能用Groovy帮我解决这个问题吗?有没有其他不使用Groovy的方法也适合我呢?
1条答案
按热度按时间osh3o9ms1#
在我看来,与其让groovy脚本为您完成这项工作(复杂的方式),不如执行以下步骤:
1.使用
wget <jenkins_url_of_console_output>
下载当前版本的控制台输出1.使用bash/python-regex来grep或捕获您希望在案例中检查的所需输出
1.将步骤2生成的字符串与所需的输出格式进行比较,最好使用IF块,并相应地通过或通过该阶段。
在您的情况下,您可以取成功/失败的百分比,并根据您的要求通过/失败阶段。希望这能帮上忙。