19320: Account for AddedScratch in spot instance cost estimates.
[arvados.git] / lib / dispatchcloud / worker / worker.go
index b01a820cd619b172538b725d689d0323897611d5..b2ed6c2bff5b039435944b851a9fe3646c922001 100644 (file)
@@ -6,7 +6,9 @@ package worker
 
 import (
        "bytes"
+       "encoding/json"
        "fmt"
+       "io"
        "path/filepath"
        "strings"
        "sync"
@@ -381,7 +383,12 @@ func (wkr *worker) probeRunning() (running []string, reportsBroken, ok bool) {
                cmd = "sudo " + cmd
        }
        before := time.Now()
-       stdout, stderr, err := wkr.executor.Execute(nil, cmd, nil)
+       var stdin io.Reader
+       if prices := wkr.instance.PriceHistory(wkr.instType); len(prices) > 0 {
+               j, _ := json.Marshal(prices)
+               stdin = bytes.NewReader(j)
+       }
+       stdout, stderr, err := wkr.executor.Execute(nil, cmd, stdin)
        if err != nil {
                wkr.logger.WithFields(logrus.Fields{
                        "Command": cmd,