INNER CODE UNIT · Go
shellout
backube/volsync · custom-scorecard-tests/main.go:232
func shellout(command string) (output string, err error) {
var stdOutAndErr bytes.Buffer
cmd := exec.Command("bash", "-c", command)
cmd.Env = append(cmd.Env, os.Environ()...)
cmd.Stdout = &stdOutAndErr
cmd.Stderr = &stdOutAndErr
err = cmd.Run()
line := "---------------------------------------------------\n"
output = line + "COMMAND: " + command + "\n" + "OUTPUT: \n" + stdOutAndErr.String()
if err != nil {
output = fmt.Sprintf("==FAILED==\nERROR: %v\n", err) + output
} else {
output = "==PASSED==\n" + output
}
return output, err