Merge "Always use /bin/sh to run the command."
This commit is contained in:
commit
9e766acb09
1 changed files with 7 additions and 3 deletions
|
@ -182,7 +182,7 @@ func shell(_ *starlark.Thread, b *starlark.Builtin, args starlark.Tuple,
|
||||||
}
|
}
|
||||||
if shellPath == "" {
|
if shellPath == "" {
|
||||||
return starlark.None,
|
return starlark.None,
|
||||||
fmt.Errorf("cannot run shell, SHELL environment variable is not set (running on Windows?)")
|
fmt.Errorf("cannot run shell, /bin/sh is missing (running on Windows?)")
|
||||||
}
|
}
|
||||||
cmd := exec.Command(shellPath, "-c", command)
|
cmd := exec.Command(shellPath, "-c", command)
|
||||||
// We ignore command's status
|
// We ignore command's status
|
||||||
|
@ -234,8 +234,12 @@ func setup(env []string) {
|
||||||
"rblf_wildcard": starlark.NewBuiltin("rblf_wildcard", wildcard),
|
"rblf_wildcard": starlark.NewBuiltin("rblf_wildcard", wildcard),
|
||||||
}
|
}
|
||||||
|
|
||||||
// NOTE(asmundak): OS-specific.
|
// NOTE(asmundak): OS-specific. Behave similar to Linux `system` call,
|
||||||
shellPath, _ = os.LookupEnv("SHELL")
|
// which always uses /bin/sh to run the command
|
||||||
|
shellPath = "/bin/sh"
|
||||||
|
if _, err := os.Stat(shellPath); err != nil {
|
||||||
|
shellPath = ""
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Parses, resolves, and executes a Starlark file.
|
// Parses, resolves, and executes a Starlark file.
|
||||||
|
|
Loading…
Reference in a new issue