2017-06-16 23 views
1

jenkinsのジョブから最後の成功したビルドを取得しようとしているので、別の条件が満たされたときにビルドの詳細が別のジョブに渡されます。私は最後の成功したビルドを取得するメソッドを持っているので、私はHudsonのRunクラスを使用しようとしていますが、コンパイルすることができません。すべてのビルドが失敗したので、今はgetPreviousFailedBuild()を使用していますが、後でビルドを成功させるためにスワップされます。私が試してみて、私は最後に.*を追加したまでhudsonクラスとgroovyを使用してjenkinsジョブから最後に成功したビルドを取得する方法

Caught: groovy.lang.MissingMethodException: No signature of method: hudson7682146427918660061.getPreviousFailedBuild() is applicable for argument types:() values: [] at hudson7682146427918660061.run(hudson7682146427918660061.groovy:5)

私はimport文でエラーを得ていた私のスクリプトを実行するとき

import hudson.model.Run.* 

def lastFailedBuild = getPreviousFailedBuild() 

は現在、私は、このエラーメッセージが表示されます。現在、私はこれを持っています私はこのようなメソッドを呼び出すことも試みました: Run.getPreviousFailedBuild()しかし、そのようなプロパティはありません。代わりに例外を実行します。

私が必要とする情報を送信できるように、以前のビルドのHudsonクラスにアクセスするには何が必要ですか。

答えて

1

代わりに私がgetLastSuccessfullBuildを(必要に応じ除いこれは私のために働い使用execute system groovy script

def lastSuccess = build.getProject().getLastSuccessfulBuild() 
+1

)が、しかし、助けてくれてありがとう、あなたはフォーマットした場合多分それは良いでしょう、あなた – cbald24

2
import jenkins.model.Jenkins 

def test_job = Jenkins.instance.getItemByFullName("My-Test-Dev") 

last_sucessful_build_number=test_job.getLastSuccessfulBuild().getNumber() 

println last_sucessful_build_number 
+0

せずにそれを行っていることができませんでした提案されたコードと説明を追加 – Kalamarico

関連する問題