2017-02-01 18 views
1

コミットがあった場合のみ、毎日ジェンキンスのビルドをスケジュールします。
そうするために、私はgroovy jenkinsプラグインをビルド前のスクリプトで使ってみました。
しかしそれはうまくいかなかった、私の状態は間違っていると思う。ここで最後に成功してからコミットしない場合、Jenkinsはビルドを停止します。

は、私が持っているものである:あなたの時間と助けを

import jenkins.model.Jenkins 
def thr = Thread.currentThread() 
def thisBuild = thr?.executable 

def build = Thread.currentThread().executable 
def testSuite = build.buildVariableResolver.resolve("TEST_SUITE") 

def item = hudson.model.Hudson.instance.getItem("$testSuite") 
def jobBuild = item.getLastSuccessfulBuild() 

// stop the current build only if the last succeed revesion is inferior 
// of current svn_revision 
if (jobBuild.getNumber() < svn_revision){ 
    thisBuild.setResult(hudson.model.Result.SUCCESS) 
    thisBuild.executor.interrupt(hudson.model.Result.SUCCESS) 
} 

おかげで多くのことを。

答えて

1

ジョブ設定では、poll scmオプションを使用できます。 cronのような式を渡すことで、Jenkinsに与えられたscmリポジトリを取得する頻度を伝えることができます。リポジトリに新しい変更がある場合にのみジョブをトリガします。

関連する問題