settings.go 677 B

12345678910111213141516171819202122232425262728293031323334353637
  1. package settings
  2. import (
  3. "gopkg.in/ini.v1"
  4. "log"
  5. )
  6. var Conf *ini.File
  7. type Server struct {
  8. HttpPort string
  9. RunMode string
  10. WebSocketToken string
  11. JwtSecret string
  12. HTTPChallengePort string
  13. Email string
  14. }
  15. var ServerSettings = &Server{}
  16. func Init() {
  17. var err error
  18. Conf, err = ini.Load("app.ini")
  19. if err != nil {
  20. log.Fatalf("setting.Setup, fail to parse 'app.ini': %v", err)
  21. }
  22. mapTo("server", ServerSettings)
  23. }
  24. func mapTo(section string, v interface{}) {
  25. err := Conf.Section(section).MapTo(v)
  26. if err != nil {
  27. log.Fatalf("Cfg.MapTo %s err: %v", section, err)
  28. }
  29. }