如何根据其他作业使用Scriptler / Groovy完成的时间设置/删除Jenkins作业触发器

时间:2019-02-05 16:35:36

标签: jenkins jenkins-groovy

我正在构建一个脚本脚本,以从导入的作业中删除构建触发器,因此它们不会构建。我已经可以使用下面的代码删除计时器触发器。 TestJob1每天生成一次,手动触发TestJob2,并在TestJob2完成时触发TestJob3。下面的代码删除了TestJob1的触发器,但是我不知道如何删除TestJob3的触发器。

import hudson.model.*
import hudson.triggers.*

TriggerDescriptor TIMER_TRIGGER_DESCRIPTOR = 
Hudson.instance.getDescriptorOrDie(TimerTrigger.class)

assert TIMER_TRIGGER_DESCRIPTOR != null;
for(item in Hudson.instance.items){
    println("Looking at "+  item.name);
    def timertrigger = item.getTriggers().get(TIMER_TRIGGER_DESCRIPTOR)
    if(item.name == "TestJob1") {
      println(item.name + " remove timer trigger");
      item.removeTrigger(TIMER_TRIGGER_DESCRIPTOR)
    }

  if(item.name == "TestJob3"){
    println(item.name + " remove Job trigger");
    //THIS IS WHAT I NEED!
  }
}

0 个答案:

没有答案