2017-07-25 60 views

回答

0

Jenkins API:{JENKINS_URL}/job/{JOB_NAME}/api/json?tree=allBuilds[url,result,timestamp,name,description,actions]
將爲您提供迄今爲止該項工作的所有構建。然後,您可以使用JAVA或您的首選代碼語言迭代此JSON,以符合您的案例時間戳中的搜索條件。

0

您可以使用Jenkins腳本控制檯。 例如,這是一個代碼,顯示您構建具有已定義構建步驟的代碼。

def findBuildContainStep(searchClass) { 
def jobs = jenkins.model.Jenkins.instance.getAllItems(AbstractProject.class).toArray() 
for(int j = 0 ; j < jobs.size(); j++) { 
    if (jobs[j].class == hudson.model.FreeStyleProject.class) { 
     def steps = jobs[j].getActions().toArray() 
     for(int s = 0 ; s < steps.size(); s++) { 
      if (steps[s].class == searchClass) { 
       println(jobs[j].getName()) 
      } 
     } 
     steps = jobs[j].getPublishers() 
     steps.each { 
     // somewhere here should be your condition 
      if (it.getValue().class == searchClass) { 
       println(jobs[j].getName()) 
      } 
     } 
    } 
    } 
} 
    findBuildContainStep(org.jvnet.hudson.plugins.groovypostbuild.GroovyPostbuildRecorder.class)