Jenkins仅在成功构建另一个管道时才允许手动构建

时间:2019-09-19 15:08:36

标签: jenkins jenkins-pipeline jenkins-plugins

我很难找到这个问题的答案,尽管我确信它已经在某处得到了答案。

我希望仅在成功执行另一步(或多个步骤)的情况下,管道才可构建(而不是自动构建)。我有一些作业存储在Jenkins文件夹中,每隔几个月运行一次。

基本上,当需要执行这些步骤时,我将创建文件夹的“副本”,以便重置所有构建,而无需任何日志或先前的构建信息。我想阻止某些步骤运行,直到完成指定步骤的稳定构建为止。

查看“构建阻止程序”插件,它非常接近我的需要,它只有“如果某些作业正在运行,则阻止构建”。还有其他功能/插件,可以在某些步骤具有稳定的构建后触发构建,但是我不希望它是自动的。基本上,我会想要类似“如果某些作业没有稳定的构建,则阻止构建”。是否存在具有此功能的插件?

再次,很抱歉,如果这是另一个问题的重复,那么Google并未针对该特定问题返回答案。

谢谢!

1 个答案:

答案 0 :(得分:0)

您可以像这样从管道中禁用项目:

import jenkins.model.*

def job = Jenkins.instance.items.find{ job ->
  job.name == "<jobName>"
}

job.setDisabled(true)
job.setDescription("Please don't start. It is disabled because of ...")

如果您想立即启动它,则必须先启用它,然后(希望)首先看到更改后的描述。

希望这有帮助:)