Merge branch '13446-keepstore-tls'
[arvados.git] / services / crunch-dispatch-slurm / slurm.go
index 735e057e2542c42cf52940fcd3279e3b82ae28fe..9e9f45270f82d3450d27e380fe63924177e5501d 100644 (file)
@@ -13,10 +13,11 @@ import (
 )
 
 type Slurm interface {
+       Batch(script io.Reader, args []string) error
        Cancel(name string) error
-       Renice(name string, nice int64) error
        QueueCommand(args []string) *exec.Cmd
-       Batch(script io.Reader, args []string) error
+       Release(name string) error
+       Renice(name string, nice int64) error
 }
 
 type slurmCLI struct{}
@@ -54,6 +55,10 @@ func (scli *slurmCLI) QueueCommand(args []string) *exec.Cmd {
        return exec.Command("squeue", args...)
 }
 
+func (scli *slurmCLI) Release(name string) error {
+       return scli.run(nil, "scontrol", []string{"release", "Name=" + name})
+}
+
 func (scli *slurmCLI) Renice(name string, nice int64) error {
        return scli.run(nil, "scontrol", []string{"update", "JobName=" + name, fmt.Sprintf("Nice=%d", nice)})
 }