mirror of
https://github.com/Icinga/icingadb.git
synced 2026-05-28 04:35:54 -04:00
Add config file parsing
This commit is contained in:
parent
e1319b5acd
commit
4f62bf0db1
2 changed files with 12 additions and 12 deletions
|
|
@ -31,13 +31,16 @@ var mysqlInfo = &MysqlInfo{
|
|||
|
||||
func ParseConfig(path string) error {
|
||||
cfg, err := ini.Load(path)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
if err := cfg.Section("redis").MapTo(redisInfo); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
if redisInfo.Host == "" {
|
||||
return errors.New("config: missing redis host")
|
||||
return errors.New("missing redis host")
|
||||
}
|
||||
|
||||
if err = cfg.Section("mysql").MapTo(mysqlInfo); err != nil {
|
||||
|
|
@ -45,10 +48,10 @@ func ParseConfig(path string) error {
|
|||
}
|
||||
|
||||
if mysqlInfo.Host == "" {
|
||||
return errors.New("config: missing mysql host")
|
||||
return errors.New("missing mysql host")
|
||||
}
|
||||
if mysqlInfo.User == "" || mysqlInfo.Password == "" {
|
||||
return errors.New("config: missing mysql credentials")
|
||||
return errors.New("missing mysql credentials")
|
||||
}
|
||||
|
||||
return nil
|
||||
|
|
|
|||
15
main.go
15
main.go
|
|
@ -1,6 +1,7 @@
|
|||
package main
|
||||
|
||||
import (
|
||||
"flag"
|
||||
"git.icinga.com/icingadb/icingadb-connection"
|
||||
"git.icinga.com/icingadb/icingadb-ha"
|
||||
"git.icinga.com/icingadb/icingadb-json-decoder"
|
||||
|
|
@ -11,16 +12,12 @@ import (
|
|||
log "github.com/sirupsen/logrus"
|
||||
)
|
||||
|
||||
type RedisInfo struct {
|
||||
host string
|
||||
port int
|
||||
user string
|
||||
password string
|
||||
}
|
||||
|
||||
func main() {
|
||||
if err := config.ParseConfig("icingadb.ini"); err != nil {
|
||||
log.Fatal(err)
|
||||
configPath := flag.String("config", "icingadb.ini", "path to config")
|
||||
flag.Parse()
|
||||
|
||||
if err := config.ParseConfig(*configPath); err != nil {
|
||||
log.Fatalf("Error reading config: %v", err)
|
||||
}
|
||||
|
||||
redisInfo := config.GetRedisInfo()
|
||||
|
|
|
|||
Loading…
Reference in a new issue