56 lines
1.1 KiB
Go
56 lines
1.1 KiB
Go
package setting
|
|
|
|
import (
|
|
"github.com/go-ini/ini"
|
|
"log"
|
|
"time"
|
|
)
|
|
|
|
var Cfg *ini.File
|
|
var (
|
|
RunMode string
|
|
HTTPPort int
|
|
ReadTimeout time.Duration
|
|
WriteTimeout time.Duration
|
|
PageSize int
|
|
JwtSecret string
|
|
)
|
|
|
|
func init() {
|
|
var err error
|
|
Cfg, err = ini.Load("conf/app.ini")
|
|
if err != nil {
|
|
log.Fatalf("Fail to parse 'conf/app.ini': %v", err)
|
|
}
|
|
|
|
LoadBase()
|
|
LoadServer()
|
|
LoadApp()
|
|
}
|
|
|
|
func LoadBase() {
|
|
//RunMode = Cfg.Section("server").Key("RUN_MODE").MustString("debug")
|
|
}
|
|
|
|
func LoadServer() {
|
|
sec, err := Cfg.GetSection("server")
|
|
if err != nil {
|
|
log.Fatalf("Fail to get section 'sever' : %v", err)
|
|
}
|
|
|
|
RunMode = sec.Key("RunMode").MustString("debug")
|
|
HTTPPort = sec.Key("HttpPort").MustInt(8000)
|
|
ReadTimeout = time.Duration(sec.Key("ReadTimeout").MustUint(60)) * time.Second
|
|
WriteTimeout = time.Duration(sec.Key("WriteTimeout").MustInt(60)) * time.Second
|
|
}
|
|
|
|
func LoadApp() {
|
|
sec, err := Cfg.GetSection("app")
|
|
if err != nil {
|
|
log.Fatalf("Fail to get section 'app':%v", err)
|
|
}
|
|
|
|
JwtSecret = sec.Key("JwtSecret").MustString("!@#!@#!@#!@@#!@#")
|
|
PageSize = sec.Key("WriteTimeout").MustInt(10)
|
|
}
|