2014-02-12 23 views
1

問題:我正在使用腳本來確定一定數量的作業是否處於SUCCESS狀態。 只要我沒有使用cloudbees文件夾插件,它就可以正常工作。我可以輕鬆獲得項目清單並獲得項目結果。但在將作業移至cloudbee文件夾後,作業以及作業結果不再可用!cloudbees,groovy,jobs,folders:如果作業位於cloudbees文件夾中,如何確定作業結果?

Q:有沒有人現在是如何從位於一個CloudBees的文件夾中的工作得到與常規作業結果?

回答

12
def job = Jenkins.instance.getItemByFullName('foldername/jobname'); 
+0

終於找到時間來測試...工程就像一個風情萬種......它是那麼明顯容易,我不知道爲什麼我did'nt找到了解決辦法我自己... :-) 非常感謝... – user6917

+0

歡迎您!如果它是你正在尋找的東西,不要忘記「接受」答案。 –

+0

@ jesse-glick是否有可能從樹頂部的所有云存儲文件夾中獲取雲存儲文件夾中的所有作業或全部作業? –

4

文件夾插件提供了getItems()方法可以用來獲取文件夾下所有的直接項目(任務/文件夾)。

folder.getItems() 

請檢查此link以遍歷Jenkins中的所有文件夾。

顯示下面的代碼片段,

import jenkins.* 
import jenkins.model.* 
import hudson.* 
import hudson.model.* 

import hudson.scm.* 
import hudson.tasks.* 
import com.cloudbees.hudson.plugins.folder.* 


jen = Jenkins.instance 

jen.getItems().each{ 
    if(it instanceof Folder){ 
     processFolder(it) 
    }else{ 
     processJob(it) 
    } 
} 

void processJob(Item job){ 

} 

void processFolder(Item folder){ 
    folder.getItems().each{ 
     if(it instanceof Folder){ 
      processFolder(it) 
     }else{ 
      processJob(it) 
     } 
    } 
} 
相關問題