do not block if one node is availalble

This commit is contained in:
Victor Vieux 2014-11-20 22:39:45 +00:00
parent 20319a5049
commit 16b22dcca2
1 changed files with 22 additions and 20 deletions

View File

@ -41,29 +41,31 @@ func manage(c *cli.Context) {
cluster := cluster.NewCluster()
cluster.Events(&logHandler{})
if c.String("token") != "" {
nodes, err := discovery.FetchSlaves(c.String("token"))
if err != nil {
log.Fatal(err)
go func() {
if c.String("token") != "" {
nodes, err := discovery.FetchSlaves(c.String("token"))
if err != nil {
log.Fatal(err)
}
if err := refresh(cluster, nodes); err != nil {
log.Fatal(err)
}
go func() {
for {
time.Sleep(25 * time.Second)
nodes, err = discovery.FetchSlaves(c.String("token"))
if err == nil {
refresh(cluster, nodes)
}
}
}()
} else {
if err := refresh(cluster, c.Args()); err != nil {
log.Fatal(err)
if err := refresh(cluster, nodes); err != nil {
log.Fatal(err)
}
go func() {
for {
time.Sleep(25 * time.Second)
nodes, err = discovery.FetchSlaves(c.String("token"))
if err == nil {
refresh(cluster, nodes)
}
}
}()
} else {
if err := refresh(cluster, c.Args()); err != nil {
log.Fatal(err)
}
}
}
}()
s := scheduler.NewScheduler(cluster, &strategy.BinPackingPlacementStrategy{}, []filter.Filter{&filter.AttributeFilter{}, &filter.PortFilter{}})