2016-12-30 35 views
0

我正在寻找jenkins插件。Jenkins插件 - 合并构建队列?

这是我的场景;

1)作业B的安静时间设置为10分钟。

2)作业B将有10个排队构建。

3)10分钟后,作业B-1开始运行。

4)B-1完成后,B-2开始运行。

5)...

==>代替步骤3)运行单个B-1打造,我要收集所有10个排队等候构建的参数和运行合并构建BX,并丢弃所有10个建造队列。

有没有可能?

+0

Editted问题。 – Dorr

回答

4

,如果我得到你的问题,你必须在队列10个作业参数工作,要运行只有最后一个?

如果是,您应该使用一些groovy脚本来检查队列,然后再触发作业或作为构建步骤执行作业,并清除队列中存在的所有以前的作业。

这是清理特定分支作业的示例,您可以根据需要对其进行修改。让我知道如果您需要任何帮助

感谢,铁道部

import jenkins.model.* 

def branchName = build.environment.get("GIT_BRANCH_NAME") 
def buildNo = build.environment.get("BUILD_NUMBER") 

println "checking if need to clean the queue for" + branchName + " build  number : " + buildNo 

def q = Jenkins.instance.queue 
q.items.each { 
    println("${it.task.name}:") 
} 

q.items.findAll { it.task.name.startsWith(branchName) }.each { 
    q.cancel(it.task) 
} 
2

您听起来是在描述一个matrix project,它启用了不同构建参数组合的矩阵。

如果你有三个不同的参数和三个不同的选项,这会给你9个构建,每个构建都在它自己的工作区中。有选项删除一些组合

这是一个good explanation of matrix builds

+0

我检查了Matrix项目插件,但它不是我想要的。我只是清楚地编辑我的查询... – Dorr