| 123456789101112131415161718192021222324252627282930313233343536373839404142434445 |
- package util
- import (
- "bytes"
- "fmt"
- "os/exec"
- "strings"
- // Vendors
- "github.com/Sirupsen/logrus"
- )
- const CmdNotFound = "Command Not Found"
- func ExecuteCommand(command string, args ...string) (string, string) {
- logrus.Debug(command, " ", args)
- cmd := exec.Command(command, args...)
- var out bytes.Buffer
- var errMsg bytes.Buffer
- cmd.Stdout = &out
- cmd.Stderr = &errMsg
- err := cmd.Run()
- if err != nil {
- if strings.Contains(err.Error(), "not found") {
- return "", CmdNotFound
- }
- return "", errMsg.String()
- }
- return out.String(), errMsg.String()
- }
- func ExecuteCommandString(command string) (string, string) {
- out, errMsg := ExecuteCommand("bash",
- "-c",
- command)
- return out, errMsg
- }
- func LogError(format string, args ...interface{}) error {
- logrus.Errorf(format, args...)
- return fmt.Errorf(format, args...)
- }
|