2015-11-12 13 views
8

groovy postbuildの直前で実行される別のビルド後のアクションのログにアクセスしたいとします。出力は別のビルド後のアクションによって生成されたので、私はmanager.logContains()を使用することはできませんGroovy Postbuildはビルド前のアクションのログメッセージを確認する方法

Build succeeded. 
    0 Warning(s) 
    0 Error(s) 

Time Elapsed 00:00:00.48 
Code Metrics Report path: **/*.Metrics.xml 
Code Metrics Report Not Found. 
Build step 'Record VS Code Metrics PowerTool Report' changed build result to UNSTABLE 

コンソール出力は次のようになります。

私は成功にビルドステータスを設定することができますが、ビルド後のアクションはあなたがmanager.build.logFile.readLines()を使用して試すことができますBuild step 'Record VS Code Metrics PowerTool Report' changed build result to UNSTABLE

if (manager.build.result == hudson.model.Result.UNSTABLE 
     && ???.contains("Build step 'Record VS Code Metrics PowerTool Report' changed build result to UNSTABLE") { 
    [email protected] = hudson.model.Result.SUCCESS 
} 
+0

Groovyを使用しない別のアプローチは、コンソールログをダウンロードすることです。 wget http:// :8080/job///consoleTextこの出力をregex grepを使用してさらに決定します – vaibhavnd

答えて

0

をログインした場合、私はそれをやってみたいです。例えば

if (manager.build.result == hudson.model.Result.UNSTABLE 

     && manager.build.logFile.readLines().contains("Build step 'Record VS Code Metrics PowerTool Report' changed build result to UNSTABLE") { 

    [email protected] = hudson.model.Result.SUCCESS 

} 

例えばOni Dar's excellent answerを参照してください。

関連する問題