diff --git a/integration/cmd.go b/integration/cmd.go index 51be33733..a254197bf 100644 --- a/integration/cmd.go +++ b/integration/cmd.go @@ -17,6 +17,7 @@ limitations under the License. package integration import ( + "bytes" "fmt" "os/exec" "testing" @@ -25,9 +26,12 @@ import ( // RunCommandWithoutTest will run cmd and if it fails will output relevant info // for debugging before returning an error. It can be run outside the context of a test. func RunCommandWithoutTest(cmd *exec.Cmd) ([]byte, error) { - output, err := cmd.CombinedOutput() + var stderr bytes.Buffer + cmd.Stderr = &stderr + output, err := cmd.Output() if err != nil { fmt.Println(cmd.Args) + fmt.Println(stderr.String()) fmt.Println(string(output)) } return output, err @@ -37,9 +41,12 @@ func RunCommandWithoutTest(cmd *exec.Cmd) ([]byte, error) { // before it fails. It must be run within the context of a test t and if the command // fails, it will the test. Returns the output from the command. func RunCommand(cmd *exec.Cmd, t *testing.T) []byte { - output, err := cmd.CombinedOutput() + var stderr bytes.Buffer + cmd.Stderr = &stderr + output, err := cmd.Output() if err != nil { t.Log(cmd.Args) + t.Log(stderr.String()) t.Log(string(output)) t.Error(err) t.FailNow()