【问题标题】:Jenkins stop build if no commit since last succeed build如果自上次成功构建以来没有提交,Jenkins 将停止构建
【发布时间】:2017-06-18 19:09:39
【问题描述】:

我想每天安排一次 jenkins 构建,但前提是有提交。
为此,我尝试使用带有预构建脚本的 groovy 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)
}

非常感谢您的时间和帮助。

【问题讨论】:

    标签: svn jenkins groovy build


    【解决方案1】:

    您可以在作业设置中使用 poll scm 选项。您可以传递类似 cron 的表达式来告诉 Jenkins 它应该多久拉一次给定的 scm 存储库。如果存储库中有新的更改,它只会触发作业。

    【讨论】:

      猜你喜欢
      • 2013-03-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-03-29
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多