mirror of
https://github.com/linuxkit/linuxkit.git
synced 2025-07-19 17:26:28 +00:00
better debugging output in more error cases
Signed-off-by: Tycho Andersen <tycho@docker.com>
This commit is contained in:
parent
a383e6bb46
commit
1504c9584e
31
main.go
31
main.go
@ -70,11 +70,38 @@ func dockerRunInput(input io.Reader, args ...string) ([]byte, error) {
|
|||||||
args = append([]string{"run", "--rm", "-i"}, args...)
|
args = append([]string{"run", "--rm", "-i"}, args...)
|
||||||
cmd := exec.Command(docker, args...)
|
cmd := exec.Command(docker, args...)
|
||||||
cmd.Stdin = input
|
cmd.Stdin = input
|
||||||
out, err := cmd.Output()
|
|
||||||
|
stderrPipe, err := cmd.StderrPipe()
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return []byte{}, err
|
return []byte{}, err
|
||||||
}
|
}
|
||||||
return out, nil
|
|
||||||
|
stdoutPipe, err := cmd.StdoutPipe()
|
||||||
|
if err != nil {
|
||||||
|
return []byte{}, err
|
||||||
|
}
|
||||||
|
|
||||||
|
err = cmd.Start()
|
||||||
|
if err != nil {
|
||||||
|
return []byte{}, err
|
||||||
|
}
|
||||||
|
|
||||||
|
stdout, err := ioutil.ReadAll(stdoutPipe)
|
||||||
|
if err != nil {
|
||||||
|
return []byte{}, err
|
||||||
|
}
|
||||||
|
|
||||||
|
stderr, err := ioutil.ReadAll(stderrPipe)
|
||||||
|
if err != nil {
|
||||||
|
return []byte{}, err
|
||||||
|
}
|
||||||
|
|
||||||
|
err = cmd.Wait()
|
||||||
|
if err != nil {
|
||||||
|
return []byte{}, fmt.Errorf("%s: %s", err, stderr)
|
||||||
|
}
|
||||||
|
|
||||||
|
return stdout, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
func untarKernel(buf *bytes.Buffer, bzimageName, ktarName string) (*bytes.Buffer, *bytes.Buffer, error) {
|
func untarKernel(buf *bytes.Buffer, bzimageName, ktarName string) (*bytes.Buffer, *bytes.Buffer, error) {
|
||||||
|
Loading…
Reference in New Issue
Block a user