Merge branch '16723-kill-vs-requeue'
[arvados.git] / lib / dispatchcloud / scheduler / interfaces.go
index e1b575c8a6dd46f1db2adedd9ecb274b479c533a..78f8c804e20087aa2b49ff307e91dfb0681efcb9 100644 (file)
@@ -7,13 +7,14 @@ package scheduler
 import (
        "time"
 
-       "git.curoverse.com/arvados.git/lib/dispatchcloud/container"
-       "git.curoverse.com/arvados.git/lib/dispatchcloud/worker"
-       "git.curoverse.com/arvados.git/sdk/go/arvados"
+       "git.arvados.org/arvados.git/lib/dispatchcloud/container"
+       "git.arvados.org/arvados.git/lib/dispatchcloud/worker"
+       "git.arvados.org/arvados.git/sdk/go/arvados"
 )
 
 // A ContainerQueue is a set of containers that need to be started or
-// stopped. Implemented by container.Queue and test stubs.
+// stopped. Implemented by container.Queue and test stubs. See
+// container.Queue method documentation for details.
 type ContainerQueue interface {
        Entries() (entries map[string]container.QueueEnt, updated time.Time)
        Lock(uuid string) error
@@ -28,7 +29,7 @@ type ContainerQueue interface {
 
 // A WorkerPool asynchronously starts and stops worker VMs, and starts
 // and stops containers on them. Implemented by worker.Pool and test
-// stubs.
+// stubs. See worker.Pool method documentation for details.
 type WorkerPool interface {
        Running() map[string]time.Time
        Unallocated() map[arvados.InstanceType]int
@@ -37,7 +38,8 @@ type WorkerPool interface {
        Create(arvados.InstanceType) bool
        Shutdown(arvados.InstanceType) bool
        StartContainer(arvados.InstanceType, arvados.Container) bool
-       KillContainer(uuid string)
+       KillContainer(uuid, reason string) bool
+       ForgetContainer(uuid string)
        Subscribe() <-chan struct{}
        Unsubscribe(<-chan struct{})
 }