summaryrefslogtreecommitdiff
path: root/run.go
diff options
context:
space:
mode:
authorJeff Carr <[email protected]>2024-12-18 00:41:52 -0600
committerJeff Carr <[email protected]>2024-12-18 00:41:52 -0600
commit4879befeb3ad89f0357f995413afcab904296599 (patch)
tree5cd9ebfab4f1b2275d34512383f29b89322a4fce /run.go
parent063e4e57c87c5e6c37709c9b327cf60ad80709d6 (diff)
parse out the required golang versionv0.0.18
Diffstat (limited to 'run.go')
-rw-r--r--run.go21
1 files changed, 12 insertions, 9 deletions
diff --git a/run.go b/run.go
index be68eb8..7e5b4dd 100644
--- a/run.go
+++ b/run.go
@@ -6,6 +6,7 @@ import (
"os"
"path/filepath"
+ "github.com/go-cmd/cmd"
"go.wit.com/lib/gui/shell"
"go.wit.com/log"
)
@@ -69,40 +70,42 @@ func runStrict(wd string, cmd []string) {
}
}
-func runVerbose(wd string, cmd []string) error {
+func runVerbose(wd string, argv []string) (cmd.Status, error) {
var err error
log.DaemonMode(true)
defer log.DaemonMode(false)
if wd != "" {
if err = os.Chdir(wd); err != nil {
- return fmt.Errorf("cd %s failed %v", wd, err)
+ var s cmd.Status
+ s.Stdout = []string{"notreal stdout from runVerbose()"}
+ return s, fmt.Errorf("cd %s failed %v", wd, err)
}
}
- log.Info(wd, "running:", wd, cmd)
+ log.Info(wd, "running:", wd, argv)
// result := shell.Run(cmd)
- result := shell.Run(cmd)
+ result := shell.Run(argv)
if result.Error != nil {
- log.Info("cmd failed", wd, cmd, err)
+ log.Info("cmd failed", wd, argv, err)
for _, line := range result.Stdout {
log.Info(line)
}
for i, line := range result.Stderr {
log.Info("STDERR:", i, line)
}
- return result.Error
+ return result, result.Error
}
if result.Exit != 0 {
- log.Info("cmd failed", wd, cmd, err)
+ log.Info("cmd failed", wd, argv, err)
for _, line := range result.Stdout {
log.Info(line)
}
for i, line := range result.Stderr {
log.Info("STDERR:", i, line)
}
- return fmt.Errorf("cmd failed with %d", result.Exit)
+ return result, fmt.Errorf("cmd failed with %d", result.Exit)
}
for _, line := range result.Stdout {
log.Info(line)
}
- return nil
+ return result, nil
}