Pre-loading batches into list
This commit is contained in:
parent
2318a12ff2
commit
aa6da671ea
15
main.go
15
main.go
@ -6,9 +6,6 @@ import (
|
|||||||
"github.com/docker/docker/client"
|
"github.com/docker/docker/client"
|
||||||
"github.com/robfig/cron"
|
"github.com/robfig/cron"
|
||||||
"golang.org/x/net/context"
|
"golang.org/x/net/context"
|
||||||
"io"
|
|
||||||
"log"
|
|
||||||
"os"
|
|
||||||
"strings"
|
"strings"
|
||||||
"time"
|
"time"
|
||||||
)
|
)
|
||||||
@ -40,15 +37,12 @@ func main() {
|
|||||||
panic(err)
|
panic(err)
|
||||||
}
|
}
|
||||||
|
|
||||||
c := cron.New()
|
|
||||||
|
|
||||||
jobs := []ContainerStartJob{}
|
jobs := []ContainerStartJob{}
|
||||||
|
|
||||||
for _, container := range containers {
|
for _, container := range containers {
|
||||||
if val, ok := container.Labels["cron.schedule"]; ok {
|
if val, ok := container.Labels["cron.schedule"]; ok {
|
||||||
jobName := strings.Join(container.Names, "/")
|
jobName := strings.Join(container.Names, "/")
|
||||||
fmt.Println("Scheduling ", jobName, "(", val, ")")
|
jobs = append(jobs, ContainerStartJob{
|
||||||
c.AddJob(val, ContainerStartJob{
|
|
||||||
Schedule: val,
|
Schedule: val,
|
||||||
Client: cli,
|
Client: cli,
|
||||||
ContainerID: container.ID,
|
ContainerID: container.ID,
|
||||||
@ -58,6 +52,13 @@ func main() {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
c := cron.New()
|
||||||
|
|
||||||
|
for _, job := range jobs {
|
||||||
|
fmt.Println("Scheduling ", job.Name, "(", job.Schedule, ")")
|
||||||
|
c.AddJob(job.Schedule, job)
|
||||||
|
}
|
||||||
|
|
||||||
// Start the cron job threads
|
// Start the cron job threads
|
||||||
c.Start()
|
c.Start()
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user