Reading other config files
It stands to reason that you may want to allow for multiple locations where a
configuration file might be found. An example might be if your application is
installed via a linux distribution's package manager, and its configuration file
is placed inside the /etc directory.
We've only told Viper to search relative to our current directory (i.e. .). So
let's also add /etc/configprinter and also the local ./conf directory.
func init() {
viper.AddConfigPath("/etc/configprinter/")
viper.AddConfigPath("./conf")
viper.AddConfigPath(".")
// ... unchanged ...
}
Move your configuration to any of these locations and Viper should still find your config file.