This script lets you easily change all jobs running every minutes so that it gets disabled between 21:00 and 07:00 and on Saturday and Sunday.
import hudson.model.* import hudson.triggers.* TriggerDescriptor SCM_TRIGGER_DESCRIPTOR = Hudson.instance.getDescriptorOrDie(SCMTrigger.class) assert SCM_TRIGGER_DESCRIPTOR != null; for(item in Hudson.instance.items) { println("Working on project <$item.name>") def trigger = item.getTriggers().get(SCM_TRIGGER_DESCRIPTOR) if(trigger != null && trigger instanceof SCMTrigger) { print("> $trigger.spec") String[] parts = trigger.spec.split(" "); //Do wanted modifs if(parts[1] == "*" ) { parts[1] = "7-21" } if(parts[4] == "*") { parts[4] = "1-5" } //end modifs StringBuilder newSpec = new StringBuilder(); for(p in parts) { newSpec.append(p+" "); } println(" => $newSpec"); def newTrigger = new SCMTrigger(newSpec.toString()) newTrigger.job = item item.removeTrigger(SCM_TRIGGER_DESCRIPTOR) item.addTrigger(newTrigger) } else { println "> Nothing to do" } }