詹金斯(Jenkins):如果职位名称包含,请删除该职位

时间:2019-09-30 15:47:36

标签: jenkins

我已经在这里解决了问题

hudson CI: how to delete all jobs?

for(j in jenkins.model.Jenkins.theInstance.getAllItems()) {
    j.delete()
}

但是我害怕运行它,因为我不想删除所有作业。能否根据条件运行它,

for(j in jenkins.model.Jenkins.theInstance.getAllItems()) {
    if(j.contains("demo")){
         j.delete();
        }
}

我不知道是否包含作品,但是为了举例,以更好的方式解释我的要求。

此外,我们可以使用此j变量执行所有功能。

詹金斯版2.176.2

1 个答案:

答案 0 :(得分:2)

您可以实现条件语句。要删除包含特定字符串的作业,可以使用:

for(j in jenkins.model.Jenkins.theInstance.getAllItems()){
    if((j.fullName).contains("demo")){
        j.delete()
    }
}

注意:如果您在Jenkins实例中有3个作业,分别为“ demo”,“ demo1”和“ example”,则此脚本将删除“ demo”和“ demo1”,但不删除“ example”。要仅删除“演示”,请使用条件:

if((j.fullName).equals("demo"))

最后,您可以利用this link来描述如何列出脚本中引用的对象可用的特定方法。