()
| 31 | } |
| 32 | |
| 33 | func (c cmdWithStderr) Output() ([]byte, error) { |
| 34 | if isVerbose, _ := utils.IsDebugEnabled(); isVerbose { |
| 35 | _ = printArgs(os.Stderr, c.Cmd.Args) |
| 36 | } |
| 37 | out, err := c.Cmd.Output() |
| 38 | if c.Cmd.Stderr != nil || err == nil { |
| 39 | return out, err |
| 40 | } |
| 41 | cmdErr := &CmdError{ |
| 42 | Args: c.Cmd.Args, |
| 43 | Err: err, |
| 44 | } |
| 45 | var exitError *exec.ExitError |
| 46 | if errors.As(err, &exitError) { |
| 47 | cmdErr.Stderr = bytes.NewBuffer(exitError.Stderr) |
| 48 | } |
| 49 | return out, cmdErr |
| 50 | } |
| 51 | |
| 52 | func (c cmdWithStderr) Run() error { |
| 53 | if isVerbose, _ := utils.IsDebugEnabled(); isVerbose { |
nothing calls this directly
no test coverage detected