run must output message on container error

This commit is contained in:
Fabiano Franz 2017-07-06 23:46:22 -03:00
parent a9bf44101b
commit f623b9b42f
3 changed files with 3 additions and 4 deletions

View File

@ -362,7 +362,7 @@ func RunRun(f cmdutil.Factory, cmdIn io.Reader, cmdOut, cmdErr io.Writer, cmd *c
return unknownRcErr return unknownRcErr
} }
return uexec.CodeExitError{ return uexec.CodeExitError{
Err: fmt.Errorf("pod %s/%s terminated", pod.Namespace, pod.Name), Err: fmt.Errorf("pod %s/%s terminated (%s)\n%s", pod.Namespace, pod.Name, pod.Status.ContainerStatuses[0].State.Terminated.Reason, pod.Status.ContainerStatuses[0].State.Terminated.Message),
Code: int(rc), Code: int(rc),
} }
default: default:

View File

@ -167,8 +167,7 @@ func checkErr(err error, handleErr func(string, int)) {
case utilerrors.Aggregate: case utilerrors.Aggregate:
handleErr(MultipleErrors(``, err.Errors()), DefaultErrorExitCode) handleErr(MultipleErrors(``, err.Errors()), DefaultErrorExitCode)
case utilexec.ExitError: case utilexec.ExitError:
// do not print anything, only terminate with given error handleErr(err.Error(), err.ExitStatus())
handleErr("", err.ExitStatus())
default: // for any other error type default: // for any other error type
msg, ok := StandardErrorMessage(err) msg, ok := StandardErrorMessage(err)
if !ok { if !ok {

View File

@ -269,7 +269,7 @@ func TestCheckExitError(t *testing.T) {
testCheckError(t, []checkErrTestCase{ testCheckError(t, []checkErrTestCase{
{ {
uexec.CodeExitError{Err: fmt.Errorf("pod foo/bar terminated"), Code: 42}, uexec.CodeExitError{Err: fmt.Errorf("pod foo/bar terminated"), Code: 42},
"", "pod foo/bar terminated",
42, 42,
}, },
}) })