X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/a758d03b74f1c62f7ed442f4a4e571e5bba29ddd..a27348943c6e35eee983d6a333eb6977394c3f13:/lib/dispatchcloud/dispatcher.go diff --git a/lib/dispatchcloud/dispatcher.go b/lib/dispatchcloud/dispatcher.go index bea6ed3cc5..2415094ac0 100644 --- a/lib/dispatchcloud/dispatcher.go +++ b/lib/dispatchcloud/dispatcher.go @@ -21,9 +21,9 @@ import ( "git.curoverse.com/arvados.git/sdk/go/arvados" "git.curoverse.com/arvados.git/sdk/go/auth" "git.curoverse.com/arvados.git/sdk/go/httpserver" - "github.com/Sirupsen/logrus" "github.com/prometheus/client_golang/prometheus" "github.com/prometheus/client_golang/prometheus/promhttp" + "github.com/sirupsen/logrus" "golang.org/x/crypto/ssh" ) @@ -35,6 +35,7 @@ const ( type pool interface { scheduler.WorkerPool Instances() []worker.InstanceView + Stop() } type dispatcher struct { @@ -120,7 +121,7 @@ func (disp *dispatcher) initialize() { disp.sshKey = key } - instanceSet, err := newInstanceSet(disp.Cluster, disp.InstanceSetID) + instanceSet, err := newInstanceSet(disp.Cluster, disp.InstanceSetID, disp.logger) if err != nil { disp.logger.Fatalf("error initializing driver: %s", err) } @@ -149,6 +150,7 @@ func (disp *dispatcher) initialize() { func (disp *dispatcher) run() { defer close(disp.stopped) defer disp.instanceSet.Stop() + defer disp.pool.Stop() staleLockTimeout := time.Duration(disp.Cluster.Dispatch.StaleLockTimeout) if staleLockTimeout == 0 {