-
Notifications
You must be signed in to change notification settings - Fork 1
/
config.go
71 lines (56 loc) · 1.64 KB
/
config.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
package config
import (
"errors"
"os"
"github.com/nightowlcasino/nightowl/logger"
"github.com/spf13/viper"
"go.uber.org/zap"
)
const (
Application = "nightowl"
ApplicationFull = "NightOwl Backend Services"
)
var (
log *zap.Logger
ErrMissingNodeWalletPass = errors.New("config ergo_node.wallet_password is missing")
ErrMissingNodeApiKey = errors.New("config ergo_node.api_key is missing")
)
func SetLoggingDefaults() {
if value := viper.Get("logging.level"); value != nil {
// logger will default to info level if user provided level is incorrect
logger.SetLevel(value.(string))
} else {
logger.SetLevel("info")
}
}
func SetNodeDefaults() {
log = zap.L()
if value := viper.Get("ergo_node.fqdn"); value == nil {
viper.Set("ergo_node.fqdn", "213.239.193.208")
}
if value := viper.Get("ergo_node.scheme"); value == nil {
viper.Set("ergo_node.scheme", "http")
}
if value := viper.Get("ergo_node.port"); value == nil {
viper.Set("ergo_node.port", 9053)
}
if value := viper.Get("ergo_node.api_key"); value == nil {
log.Error("required config is absent", zap.Error(ErrMissingNodeApiKey))
os.Exit(1)
}
if value := viper.Get("ergo_node.wallet_password"); value == nil {
log.Error("required config is absent", zap.Error(ErrMissingNodeWalletPass))
os.Exit(1)
}
}
func SetExplorerDefaults() {
if value := viper.Get("explorer_node.fqdn"); value == nil {
viper.Set("explorer_node.fqdn", "api.ergoplatform.com")
}
if value := viper.Get("explorer_node.scheme"); value == nil {
viper.Set("explorer_node.scheme", "https")
}
if value := viper.Get("explorer_node.port"); value == nil {
viper.Set("explorer_node.port", 443)
}
}