INNER CODE UNIT · Go
BuildCmd
eko/monday · pkg/helper/cmd.go:14
func BuildCmd(commandsList []string, path string, stdout, stderr *log.Streamer) *exec.Cmd {
var commands = strings.Join(commandsList, "; ")
commands = strings.Replace(commands, "~", "$HOME", -1)
commands = os.ExpandEnv(commands)
cmd := exec.Command("/bin/sh", "-c", strings.Replace(commands, "'", "\\'", -1))
cmd.SysProcAttr = &syscall.SysProcAttr{Setpgid: true}
cmd.Dir = path
cmd.Env = os.Environ()
if stdout != nil {
cmd.Stdout = stdout
}
if stderr != nil {
cmd.Stderr = stderr
}