+++ /dev/null
-package config
-
-import (
- "encoding/json"
- "os"
-
- log "github.com/sirupsen/logrus"
-
- "github.com/vapor/crypto/ed25519/chainkd"
- "github.com/vapor/toolbar/common"
-)
-
-func NewConfig() *Config {
- if len(os.Args) <= 1 {
- log.Fatal("Please setup the config file path")
- }
-
- return NewConfigWithPath(os.Args[1])
-}
-
-func NewConfigWithPath(path string) *Config {
- configFile, err := os.Open(path)
- if err != nil {
- log.WithFields(log.Fields{"err": err, "file_path": os.Args[1]}).Fatal("fail to open config file")
- }
- defer configFile.Close()
-
- cfg := &Config{}
- if err := json.NewDecoder(configFile).Decode(cfg); err != nil {
- log.WithField("err", err).Fatal("fail to decode config file")
- }
-
- return cfg
-}
-
-type Config struct {
- MySQLConfig common.MySQLConfig `json:"mysql"`
- Chain Chain `json:"chain"`
- XPubs []chainkd.XPub `json:"xpubs"`
-}
-
-type Chain struct {
- Name string `json:"name"`
- Upstream string `json:"upstream"`
- SyncSeconds uint64 `json:"sync_seconds"`
-}