1
0
Fork 0

Updated for go 1.16 modules

This commit is contained in:
Julien Dessaux 2021-04-23 16:51:22 +02:00
parent 8278d7b471
commit 38d9c881b3
25 changed files with 25 additions and 19 deletions

35
pkg/job/utils.go Normal file
View file

@ -0,0 +1,35 @@
package job
// KeepOldestOnly filters a job list and keeps only the most recent entry for a job name
func KeepOldestOnly(jobs []Job) (results []Job) {
outerLoop:
for i := 0; i < len(jobs); i++ {
job := jobs[i]
for j := 0; j < len(results); j++ {
result := results[j]
if result.Name == job.Name {
continue outerLoop
}
}
for j := i + 1; j < len(jobs); j++ {
sec := jobs[j]
if sec.Name == job.Name && sec.Timestamp > job.Timestamp {
job = sec
}
}
results = append(results, job)
}
return
}
// KeepSuccessOnly returns only the successful jobs from a job list (suiatble to write a new spool file)
func KeepSuccessOnly(jobs []Job) (result []Job) {
result = make([]Job, 0)
for i := 0; i < len(jobs); i++ {
job := jobs[i]
if job.Success {
result = append(result, job)
}
}
return
}