diff --git a/src/client/cli.go b/src/client/cli.go index 2aeb19f..4c0a057 100644 --- a/src/client/cli.go +++ b/src/client/cli.go @@ -83,9 +83,10 @@ func (s *CliClient) Execute(wait bool, args []string, stdin string) (string, err cmd.Stdin = strings.NewReader(stdin) } if wait { - var combinedOutput bytes.Buffer - cmd.Stdout = &combinedOutput - cmd.Stderr = &combinedOutput + var stdoutBuffer bytes.Buffer + var stderrBuffer bytes.Buffer + cmd.Stdout = &stdoutBuffer + cmd.Stderr = &stderrBuffer err := cmd.Start() if err != nil { @@ -105,11 +106,17 @@ func (s *CliClient) Execute(wait bool, args []string, stdin string) (string, err return "", errors.New("process killed as timeout reached") case err := <-done: if err != nil { - return "", errors.New(combinedOutput.String()) + combinedOutput := stdoutBuffer.String() + " " + stderrBuffer.String() + log.Debug("signal-cli output (stdout): ", stdoutBuffer.String()) + log.Debug("signal-cli output (stderr): ", stderrBuffer.String()) + return "", errors.New(combinedOutput) } } - return combinedOutput.String(), nil + combinedOutput := stdoutBuffer.String() + " " + stderrBuffer.String() + log.Debug("signal-cli output (stdout): ", stdoutBuffer.String()) + log.Debug("signal-cli output (stderr): ", stderrBuffer.String()) + return combinedOutput, nil } else { stdout, err := cmd.StdoutPipe() if err != nil {