From: Sebastien Douheret Date: Fri, 23 Jun 2017 15:48:14 +0000 (+0200) Subject: Support $HOME on Windows host. X-Git-Tag: 0.1.0~16 X-Git-Url: https://gerrit.automotivelinux.org/gerrit/gitweb?p=src%2Fxds%2Fxds-agent.git;a=commitdiff_plain;h=a64aa619d31130d08e228b467516c8cb7e814973 Support $HOME on Windows host. --- diff --git a/lib/common/filepath.go b/lib/common/filepath.go index 4c8c0da..d9cb3d5 100644 --- a/lib/common/filepath.go +++ b/lib/common/filepath.go @@ -7,6 +7,7 @@ import ( "path" "path/filepath" "regexp" + "runtime" ) // Exists returns whether the given file or directory exists or not @@ -42,7 +43,14 @@ func ResolveEnvVar(s string) (string, error) { for _, v := range vars { val := os.Getenv(v[1]) if val == "" { - return res, fmt.Errorf("ERROR: %s env variable not defined", v[1]) + // Specific case to resolved $HOME or ${HOME} on Windows host + if runtime.GOOS == "windows" && v[1] == "HOME" { + if usr, err := user.Current(); err == nil { + val = usr.HomeDir + } + } else { + return res, fmt.Errorf("ERROR: %s env variable not defined", v[1]) + } } rer := regexp.MustCompile("\\${" + v[1] + "}")