package config
|
|
import (
|
"github.com/spf13/viper"
|
"log"
|
)
|
|
type server []ServerInfo
|
|
type ServerInfo struct {
|
ServerId string `mapstructure: "serverId"`
|
ServerIp string `mapstructure: "serverIp"`
|
VideoPort string `mapstructure: "videoPort"`
|
NgxIp string `mapstructure: "ngxIp"`
|
NgxPort string `mapstructure: "ngxPort"`
|
}
|
|
var serverList = &server{}
|
|
var ServerMap = make(map[string]string,0)
|
var NgxMap = make(map[string]string,0)
|
func Init(env string, configPath string) {
|
var err error
|
viper.SetConfigType("yaml")
|
viper.SetConfigName(env)
|
viper.AddConfigPath(configPath)
|
err = viper.ReadInConfig()
|
if err != nil {
|
log.Fatal("error on parsing configuration file",err)
|
}
|
viper.UnmarshalKey("server", serverList)
|
for _,s :=range *serverList {
|
si := s
|
ServerMap[si.ServerId] = "http://"+si.ServerIp+":"+si.VideoPort+"/getRecordVideoPath"
|
NgxMap[si.ServerId] = "http://"+si.NgxIp+":"+si.NgxPort+"/videosource"
|
}
|
}
|