一尘不染

如何使用Java API在Jenkins中了解Jenkins构建执行器是否空闲

jenkins

我想通过使用java-jenkins API来了解jenkins中的生成执行器是否空闲(空闲或主节点中正在运行任何作业)。我的要求是这样的。

  1. 如果有任何执行者有空,我必须触发詹金斯工作,否则我将等到他们可用。
  2. 为此,我必须使用Jenkins的API
  3. 我必须用Java完成所有这些实现

请帮助我哪种API方法将赋予执行者身份。执行者是下图中突出显示的内容:


阅读 363

收藏
2020-07-25

共1个答案

一尘不染

用于检查从站是否在线和空闲的系统常规脚本。

import hudson.model.Node
import hudson.model.Slave
import jenkins.model.Jenkins

Jenkins jenkins = Jenkins.instance
def jenkinsNodes =jenkins.nodes

for (Node node in jenkinsNodes) 
{
    // Make sure slave is online
    if (!node.getComputer().isOffline()) 
    {           
        //Make sure that the slave busy executor number is 0.
        if(node.getComputer().countBusy()==0)
        {
           ...Do somthing...
        }
    }
}
2020-07-25