fix stdout,stderr
parent
74b7054b4a
commit
48cd8620f2
|
@ -42,8 +42,19 @@ func (*ExecRunner) RunCmd(cmd *exec.Cmd) (*RunResult, error) {
|
|||
glog.Infof("(ExecRunner) Run: %v", rr.Command())
|
||||
|
||||
var outb, errb bytes.Buffer
|
||||
cmd.Stdout, rr.Stdout = &outb, &outb
|
||||
cmd.Stderr, rr.Stderr = &errb, &errb
|
||||
if cmd.Stdout == nil {
|
||||
cmd.Stdout, rr.Stdout = &outb, &outb
|
||||
} else {
|
||||
io.MultiWriter(rr.Stdout, &outb)
|
||||
rr.Stdout = &outb
|
||||
}
|
||||
if cmd.Stderr == nil {
|
||||
cmd.Stderr, rr.Stderr = &errb, &errb
|
||||
} else {
|
||||
io.MultiWriter(rr.Stderr, &errb)
|
||||
rr.Stdout = &errb
|
||||
}
|
||||
|
||||
start := time.Now()
|
||||
err := cmd.Run()
|
||||
elapsed := time.Since(start)
|
||||
|
|
|
@ -111,6 +111,19 @@ func (s *SSHRunner) RunCmd(cmd *exec.Cmd) (*RunResult, error) {
|
|||
rr.Stderr = &errb.b
|
||||
start := time.Now()
|
||||
|
||||
if cmd.Stdout == nil {
|
||||
cmd.Stdout, rr.Stdout = &outb, &outb.b
|
||||
} else {
|
||||
io.MultiWriter(rr.Stdout, &outb)
|
||||
rr.Stdout = &outb.b
|
||||
}
|
||||
if cmd.Stderr == nil {
|
||||
cmd.Stderr, rr.Stderr = &errb, &errb.b
|
||||
} else {
|
||||
io.MultiWriter(rr.Stderr, &errb)
|
||||
rr.Stdout = &errb.b
|
||||
}
|
||||
|
||||
sess, err := s.c.NewSession()
|
||||
if err != nil {
|
||||
return rr, errors.Wrap(err, "NewSession")
|
||||
|
|
Loading…
Reference in New Issue