package config import "github.com/spf13/viper" var ( defaultConfigPath = "config/config.toml" namespaceConfigPath = map[string]string{} ) func SetDefaultConfigPath(confPath string) { defaultConfigPath = confPath } func SetNamespaceConfigPath(namespace string, confPath string) { namespaceConfigPath[namespace] = confPath } func getViper(namespace ...string) (v *viper.Viper, err error) { confPath := defaultConfigPath if len(namespace) > 0 { confPath = namespaceConfigPath[namespace[0]] } v, err = loadViper(confPath) return } func GetString(key string, namespace ...string) (value string, err error) { v, err := getViper(namespace...) if err != nil { return } value = v.GetString(key) return }