in capi/lib/lint/certlint/certlint.go [76:108]
func lint(fname, tool string) certlint {
result := NewCertlint()
cmd := exec.Command("ruby", "-I", LIB, tool, fname)
stdout := bytes.NewBuffer([]byte{})
stderr := bytes.NewBuffer([]byte{})
cmd.Stdout = stdout
cmd.Stderr = stderr
err := cmd.Run()
if err != nil {
errStr := err.Error()
result.CmdError = &errStr
return result
}
output, err := ioutil.ReadAll(stdout)
if err != nil {
errStr := err.Error()
result.CmdError = &errStr
return result
}
errors, err := ioutil.ReadAll(stderr)
if err != nil {
errStr := err.Error()
result.CmdError = &errStr
return result
}
if string(errors) != "" {
errStr := string(errors)
result.CmdError = &errStr
return result
}
parseOutput(output, &result)
return result
}