diff options
| author | Shulhan <ms@kilabit.info> | 2018-06-05 23:05:40 +0700 |
|---|---|---|
| committer | Shulhan <ms@kilabit.info> | 2018-06-05 23:05:40 +0700 |
| commit | dec955d8f85e6ca5515bee53fd25dc8f24da2027 (patch) | |
| tree | 4ea60cd6cfcfcbffb9faa61e40ffaa56881b2be0 /package.go | |
| parent | d7f5cb4233394a0e810de15ecf2e97a79a9a3acd (diff) | |
| download | beku-dec955d8f85e6ca5515bee53fd25dc8f24da2027.tar.xz | |
NewEnvironment: get or set user PATH from environment
The PATH is used when running specific command, i.e. Run() and GoInstall().
Diffstat (limited to 'package.go')
| -rw-r--r-- | package.go | 18 |
1 files changed, 4 insertions, 14 deletions
@@ -238,7 +238,7 @@ func (pkg *Package) RemoveRequiredBy(importPath string) (ok bool) { // // Run command on package root directory. // -func (pkg *Package) Run(cmds []string) (err error) { +func (pkg *Package) Run(env *Env, cmds []string) (err error) { if len(cmds) == 0 { return } @@ -249,13 +249,8 @@ func (pkg *Package) Run(cmds []string) (err error) { cmd.Args = append(cmd.Args, cmds[1:]...) } - path := os.Getenv(envPATH) - if len(path) == 0 { - path = defPATH - } - cmd.Env = append(cmd.Env, "GOPATH="+build.Default.GOPATH) - cmd.Env = append(cmd.Env, "PATH="+path) + cmd.Env = append(cmd.Env, "PATH="+env.path) cmd.Dir = pkg.FullPath cmd.Stdout = defStdout cmd.Stderr = defStderr @@ -516,7 +511,7 @@ func (pkg *Package) load(sec *ini.Section) { // (1) Set PATH to let go install that require gcc work when invoked from // non-interactive shell (e.g. buildbot). // -func (pkg *Package) GoInstall() (err error) { +func (pkg *Package) GoInstall(env *Env) (err error) { //nolint:gas cmd := exec.Command("go", "install") if Debug >= DebugL2 { @@ -524,13 +519,8 @@ func (pkg *Package) GoInstall() (err error) { } cmd.Args = append(cmd.Args, "./...") - path := os.Getenv(envPATH) - if len(path) == 0 { - path = defPATH - } - cmd.Env = append(cmd.Env, "GOPATH="+build.Default.GOPATH) - cmd.Env = append(cmd.Env, "PATH="+path) + cmd.Env = append(cmd.Env, "PATH="+env.path) cmd.Dir = pkg.FullPath cmd.Stdout = defStdout cmd.Stderr = defStderr |
