2017-10-27 14 views
1

나는 매일 여러 작업을 수행하는 데 노예가 얼마나 많은지 표시하는 스크립트를 작성하고 있습니다.젠킨스 노예의 %를 볼 콘솔 스크립트는 매일 작업을 실행하는 데 쓰다

1 일 동안 작업을 실행하는 데 슬레이브가 소비 한 시간을 계산하는 코드를 파악할 수 없습니다.

builds.duration이 발견되었지만 슬레이브가 연결 된 이후로 작업 한 총 시간이 소요 된 것 같습니다.

답변

0

이것은 정확한 대답은 아니지만 좋은 시작일 수 있습니다. 링크가 지금 죽으면 여기

Node Information은, 실제 코드는 다음과 같습니다 :

for (aSlave in hudson.model.Hudson.instance.slaves) { 
    println('===================='); 
    println('Name: ' + aSlave.name); 
    println('getLabelString: ' + aSlave.getLabelString()); 
    println('getNumExectutors: ' + aSlave.getNumExecutors()); 
    println('getRemoteFS: ' + aSlave.getRemoteFS()); 
    println('getMode: ' + aSlave.getMode()); 
    println('getRootPath: ' + aSlave.getRootPath()); 
    println('getDescriptor: ' + aSlave.getDescriptor()); 
    println('getComputer: ' + aSlave.getComputer()); 
    println('\tcomputer.isAcceptingTasks: ' + aSlave.getComputer().isAcceptingTasks()); 
    println('\tcomputer.isLaunchSupported: ' + aSlave.getComputer().isLaunchSupported()); 
    println('\tcomputer.getConnectTime: ' + aSlave.getComputer().getConnectTime()); 
    println('\tcomputer.getDemandStartMilliseconds: ' + aSlave.getComputer().getDemandStartMilliseconds()); 
    println('\tcomputer.isOffline: ' + aSlave.getComputer().isOffline()); 
    println('\tcomputer.countBusy: ' + aSlave.getComputer().countBusy()); 
    //if (aSlave.name == 'NAME OF NODE TO DELETE') { 
    // println('Shutting down node!!!!'); 
    // aSlave.getComputer().setTemporarilyOffline(true,null); 
    // aSlave.getComputer().doDoDelete(); 
    //} 
    println('\tcomputer.getLog: ' + aSlave.getComputer().getLog()); 
    println('\tcomputer.getBuilds: ' + aSlave.getComputer().getBuilds()); 
} 
여기 노드에서 정보의 무리를 얻을 수있는 그루비 스크립트 년 전에 쓴