I need to get the list of jobs that was successfully ran in last 24hrs from current time of script execution. Currently i am getting only present days date successful jobs but however i am looking for last 24hrs which could be last days jobs also which fall under 24 hrs.
Have written a script and getting results for present days but not for 24 hrs
import hudson.model.*
Date date = new Date()
String present = date.format("MM-dd-yyyy")
def str_view = "GitLab_jobs"
def view = Hudson.instance.getView(str_view)
def successfulJobs = view.getItems().findAll {
job - > job.lastBuild != null && job.lastBuild.result == hudson.model.Result.SUCCESS && !job.name.contains("maintenance")
}
def faildJobs = view.getItems().findAll {
job - > job.lastBuild != null && job.lastBuild.result == hudson.model.Result.FAILURE && !job.name.contains("maintenance")
}
def disabledJob = view.getItems().findAll {
job - > job.disabled == true && !job.name.contains("maintenance")
}
def enabledJob = view.getItems().findAll {
job - > job.disabled != true && !job.name.contains("maintenance")
}
println "Total jobs: " + view.getItems().size + " Successful: " + successfulJobs.size +
" Failed: " + faildJobs.size + " Enabled jobs: " + enabledJob.size + " Disabled jobs: " + disabledJob.size
println "Current Successful job Today:"
successfulJobs.each {
job - > printInfo(job)
}
def printInfo(job) {
Date date = new Date()
String datePart = date.format("MM-dd-yyyy")
String timePart = date.format("HH:mm:ss")
x = "${datePart}"
y = "${job.lastBuild.getTime().format("
MM - dd - yyyy ")}"
if ("$x" == "$y") {
println "Job: ${job.name} build on ${job.getAssignedLabelString()}, " +
"Date ${job.lastBuild.getTime().format("
MM - dd - yyyy ")}, is disabled : ${job.disabled}"
}
}