Files
go-example/cmn/conf/conf.go

39 lines
633 B
Go

package conf
import (
"os"
"github.com/spf13/viper"
)
func Init(file string) {
viper.AddConfigPath(".")
viper.AddConfigPath("..")
viper.SetConfigFile(file)
err := viper.ReadInConfig()
if err != nil {
panic(err)
}
// read test.key file
var keyFile *os.File
keyFile, err = os.Open(viper.GetString("certs.testKeyPath"))
if err != nil {
panic(err)
}
defer keyFile.Close()
var fileInfo os.FileInfo
fileInfo, err = keyFile.Stat()
if err != nil {
panic(err)
}
keyData := make([]byte, fileInfo.Size())
_, err = keyFile.Read(keyData)
if err != nil {
panic(err)
}
viper.Set("test.key", string(keyData))
}