mirror of
https://github.com/kevin-DL/revel-cmd.git
synced 2026-01-11 18:54:31 +00:00
Merge branch 'develop' into lint
This commit is contained in:
@@ -13,7 +13,16 @@ import (
|
||||
func CmdInit(c *exec.Cmd, addGoPath bool, basePath string) {
|
||||
c.Dir = basePath
|
||||
// Dep does not like paths that are not real, convert all paths in go to real paths
|
||||
// Fetch the rest of the env variables
|
||||
c.Env = ReducedEnv(addGoPath)
|
||||
|
||||
}
|
||||
|
||||
// ReducedEnv returns a list of environment vairables by using os.Env
|
||||
// it will remove the GOPATH, GOROOT if addGoPath is true
|
||||
func ReducedEnv(addGoPath bool) []string {
|
||||
realPath := &bytes.Buffer{}
|
||||
env := []string{}
|
||||
if addGoPath {
|
||||
for _, p := range filepath.SplitList(build.Default.GOPATH) {
|
||||
rp, _ := filepath.EvalSymlinks(p)
|
||||
@@ -23,14 +32,18 @@ func CmdInit(c *exec.Cmd, addGoPath bool, basePath string) {
|
||||
realPath.WriteString(rp)
|
||||
}
|
||||
// Go 1.8 fails if we do not include the GOROOT
|
||||
c.Env = []string{"GOPATH=" + realPath.String(), "GOROOT=" + os.Getenv("GOROOT")}
|
||||
env = []string{"GOPATH=" + realPath.String(), "GOROOT=" + os.Getenv("GOROOT")}
|
||||
}
|
||||
// Fetch the rest of the env variables
|
||||
|
||||
for _, e := range os.Environ() {
|
||||
pair := strings.Split(e, "=")
|
||||
if pair[0] == "GOPATH" || pair[0] == "GOROOT" {
|
||||
// Always exclude gomodcache
|
||||
if pair[0] == "GOMODCACHE" {
|
||||
continue
|
||||
} else if !addGoPath && (pair[0] == "GOPATH" || pair[0] == "GOROOT") {
|
||||
continue
|
||||
}
|
||||
c.Env = append(c.Env, e)
|
||||
env = append(env, e)
|
||||
}
|
||||
return env
|
||||
}
|
||||
|
||||
@@ -367,9 +367,10 @@ func findSrcPaths(appPath string, packagesList []string) (sourcePathsmap map[str
|
||||
// Use packages to fetch
|
||||
// by not specifying env, we will use the default env
|
||||
config := &packages.Config{
|
||||
Mode: packages.NeedName | packages.NeedFiles,
|
||||
Mode: packages.NeedName | packages.NeedFiles | packages.NeedDeps,
|
||||
Dir: appPath,
|
||||
}
|
||||
config.Env = ReducedEnv(false)
|
||||
sourcePathsmap = map[string]string{}
|
||||
Logger.Infof("Environment path %s root %s config env %s", os.Getenv("GOPATH"), os.Getenv("GOROOT"), config.Env)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user