X-Git-Url: https://gerrit.automotivelinux.org/gerrit/gitweb?a=blobdiff_plain;f=lib%2Fxdsconfig%2Ffileconfig.go;h=dafb034718cd159860fc4f94e0ec9dbb1f7cacbe;hb=5c1d023f41472660952ee559e2484cd6bbe688d3;hp=a0724af91df63e9259d097fa07a3f64d1939c0a9;hpb=5756bd350d585660cce53a28dc66bfcf162ecca1;p=src%2Fxds%2Fxds-server.git diff --git a/lib/xdsconfig/fileconfig.go b/lib/xdsconfig/fileconfig.go index a0724af..dafb034 100644 --- a/lib/xdsconfig/fileconfig.go +++ b/lib/xdsconfig/fileconfig.go @@ -16,6 +16,8 @@ const ( ConfigDir = ".xds-server" // GlobalConfigFilename Global config filename GlobalConfigFilename = "config.json" + // ServerDataFilename Server data filename + ServerDataFilename = "server-data.xml" // FoldersConfigFilename Folders config filename FoldersConfigFilename = "server-config_folders.xml" ) @@ -59,11 +61,12 @@ func readGlobalConfig(c *Config, confFile string) error { searchIn = append(searchIn, "/etc/xds-server/config.json") exePath := os.Args[0] - exeAbsPath, err := filepath.Abs(os.Args[0]) + ee, _ := os.Executable() + exeAbsPath, err := filepath.Abs(ee) if err == nil { exePath, err = filepath.EvalSymlinks(exeAbsPath) if err == nil { - exePath = filepath.Dir(exePath) + exePath = filepath.Dir(ee) } else { exePath = filepath.Dir(exeAbsPath) } @@ -81,7 +84,7 @@ func readGlobalConfig(c *Config, confFile string) error { // No config file found return nil } - c.Log.Infof("Use config file: %s", *cFile) + c.Log.Infof("Use config file: %s", *cFile) // TODO move on viper package to support comments in JSON and also // bind with flags (command line options) @@ -145,11 +148,20 @@ func readGlobalConfig(c *Config, confFile string) error { return nil } -// FoldersConfigFilenameGet -func FoldersConfigFilenameGet() (string, error) { +func configFilenameGet(cfgFile string) (string, error) { usr, err := user.Current() if err != nil { return "", err } - return path.Join(usr.HomeDir, ConfigDir, FoldersConfigFilename), nil + return path.Join(usr.HomeDir, ConfigDir, cfgFile), nil +} + +// FoldersConfigFilenameGet +func FoldersConfigFilenameGet() (string, error) { + return configFilenameGet(FoldersConfigFilename) +} + +// ServerDataFilenameGet +func ServerDataFilenameGet() (string, error) { + return configFilenameGet(ServerDataFilename) }