VirtualTam's bookmarks

  1.  1for (agent in hudson.model.Hudson.instance.slaves) {
     2  println('====================');
     3  println('Name: ' + agent.name);
     4  println('getLabelString: ' + agent.getLabelString());
     5  println('getNumExectutors: ' + agent.getNumExecutors());
     6  println('getRemoteFS: ' + agent.getRemoteFS());
     7  println('getMode: ' + agent.getMode());
     8  println('getRootPath: ' + agent.getRootPath());
     9  println('getDescriptor: ' + agent.getDescriptor());
    10  println('getComputer: ' + agent.getComputer());
    11  println('\tcomputer.isAcceptingTasks: ' + agent.getComputer().isAcceptingTasks());
    12  println('\tcomputer.isLaunchSupported: ' + agent.getComputer().isLaunchSupported());
    13  println('\tcomputer.getConnectTime: ' + agent.getComputer().getConnectTime());
    14  println('\tcomputer.getDemandStartMilliseconds: ' + agent.getComputer().getDemandStartMilliseconds());
    15  println('\tcomputer.isOffline: ' + agent.getComputer().isOffline());
    16  println('\tcomputer.countBusy: ' + agent.getComputer().countBusy());
    17  //if (agent.name == 'NAME OF NODE TO DELETE') {
    18  //  println('Shutting down node!!!!');
    19  //  agent.getComputer().setTemporarilyOffline(true,null);
    20  //  agent.getComputer().doDoDelete();
    21  //}
    22  println('\tcomputer.getLog: ' + agent.getComputer().getLog());
    23  println('\tcomputer.getBuilds: ' + agent.getComputer().getBuilds());
    24}
    
  2.  1// THIS WILL SEND AN INTERRUPT TO ALL MATCHING THREADS
     2Thread.getAllStackTraces().keySet().each() {
     3  t -> if (t.getName().contains("PATTERN") ) { t.interrupt(); }
     4}
     5
     6// THIS WILL FORCE-STOP ALL MATCHING THREADS
     7// May be required for recursive loops
     8Thread.getAllStackTraces().keySet().each() {
     9  t -> if (t.getName().contains("PATTERN") ) { t.stop(); }
    10}
    
  3. item = Jenkins.instance.getItemByFullName("your-job-name-here")
    
    // THIS WILL REMOVE ALL BUILD HISTORY
    item.builds.each() { build ->
      build.delete()
    }
    item.updateNextBuildNumber(1)