summaryrefslogtreecommitdiffstats
path: root/utils/config.go
diff options
context:
space:
mode:
Diffstat (limited to 'utils/config.go')
-rw-r--r--utils/config.go20
1 files changed, 15 insertions, 5 deletions
diff --git a/utils/config.go b/utils/config.go
index 8c80d5349..802dfc2e9 100644
--- a/utils/config.go
+++ b/utils/config.go
@@ -1,4 +1,4 @@
-// Copyright (c) 2015 Mattermost, Inc. All Rights Reserved.
+// Copyright (c) 2015-present Mattermost, Inc. All Rights Reserved.
// See License.txt for license information.
package utils
@@ -37,6 +37,7 @@ var CfgDiagnosticId = ""
var CfgHash = ""
var ClientCfgHash = ""
var CfgFileName string = ""
+var CfgDisableConfigWatch = false
var ClientCfg map[string]string = map[string]string{}
var originalDisableDebugLvl l4g.Level = l4g.DEBUG
var siteURL = ""
@@ -67,6 +68,8 @@ func FindDir(dir string) string {
fileName, _ = filepath.Abs("./" + dir + "/")
} else if _, err := os.Stat("../" + dir + "/"); err == nil {
fileName, _ = filepath.Abs("../" + dir + "/")
+ } else if _, err := os.Stat("../../" + dir + "/"); err == nil {
+ fileName, _ = filepath.Abs("../../" + dir + "/")
}
return fileName + "/"
@@ -177,6 +180,10 @@ func InitializeConfigWatch() {
cfgMutex.Lock()
defer cfgMutex.Unlock()
+ if CfgDisableConfigWatch {
+ return
+ }
+
if watcher == nil {
var err error
watcher, err = fsnotify.NewWatcher()
@@ -214,11 +221,13 @@ func EnableConfigWatch() {
cfgMutex.Lock()
defer cfgMutex.Unlock()
- configFile := filepath.Clean(CfgFileName)
- configDir, _ := filepath.Split(configFile)
-
if watcher != nil {
- watcher.Add(configDir)
+ configFile := filepath.Clean(CfgFileName)
+ configDir, _ := filepath.Split(configFile)
+
+ if watcher != nil {
+ watcher.Add(configDir)
+ }
}
}
@@ -258,6 +267,7 @@ func LoadConfig(fileName string) {
viper.SetConfigType("json")
viper.AddConfigPath("./config")
viper.AddConfigPath("../config")
+ viper.AddConfigPath("../../config")
viper.AddConfigPath(".")
configReadErr := viper.ReadInConfig()