团队,
我想找出 30 天前在 jenkins 中构建的工作,并且自 30 天以来还没有构建。
是否有任何休息 api 或类似的东西可以帮助我做到这一点。
团队,
我想找出 30 天前在 jenkins 中构建的工作,并且自 30 天以来还没有构建。
是否有任何休息 api 或类似的东西可以帮助我做到这一点。
Jenkins API:{JENKINS_URL}/job/{JOB_NAME}/api/json?tree=allBuilds[url,result,timestamp,name,description,actions]
将为您提供迄今为止为该工作运行的所有构建。然后您可以使用 JAVA 或您的首选代码语言迭代此 JSON 以匹配您的搜索条件,即您的案例时间戳。
您可以使用 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)