diff --git a/cobra/cmd/init.go b/cobra/cmd/init.go index b77c9864..b33bd3a1 100644 --- a/cobra/cmd/init.go +++ b/cobra/cmd/init.go @@ -205,14 +205,16 @@ func init() { {{ if .viper }} // initConfig reads in config file and ENV variables if set. func initConfig() { - if cfgFile != "" { // enable ability to specify config file via flag - viper.SetConfigFile(cfgFile) - } viper.SetConfigName(".{{ .appName }}") // name of config file (without extension) viper.AddConfigPath(os.Getenv("HOME")) // adding home directory as first search path viper.AutomaticEnv() // read in environment variables that match + // Checking for the cfgFile after setting default paths. + if cfgFile != "" { // enable ability to specify config file via flag + viper.SetConfigFile(cfgFile) + } + // If a config file is found, read it in. if err := viper.ReadInConfig(); err == nil { fmt.Println("Using config file:", viper.ConfigFileUsed()) diff --git a/cobra/cmd/root.go b/cobra/cmd/root.go index 32386ace..2ab569da 100644 --- a/cobra/cmd/root.go +++ b/cobra/cmd/root.go @@ -57,14 +57,16 @@ func init() { // Read in config file and ENV variables if set. func initConfig() { - if cfgFile != "" { // enable ability to specify config file via flag - viper.SetConfigFile(cfgFile) - } viper.SetConfigName(".cobra") // name of config file (without extension) viper.AddConfigPath(os.Getenv("HOME")) // adding home directory as first search path viper.AutomaticEnv() // read in environment variables that match + // Checking for the cfgFile after setting default paths. + if cfgFile != "" { // enable ability to specify config file via flag + viper.SetConfigFile(cfgFile) + } + // If a config file is found, read it in. if err := viper.ReadInConfig(); err == nil { fmt.Println("Using config file:", viper.ConfigFileUsed())