Skip to content

Commit

Permalink
config: fix default fallback
Browse files Browse the repository at this point in the history
  • Loading branch information
jzelinskie committed Mar 17, 2016
1 parent 19b730e commit 20af787
Showing 1 changed file with 20 additions and 18 deletions.
38 changes: 20 additions & 18 deletions config/config.go
Original file line number Diff line number Diff line change
Expand Up @@ -66,28 +66,31 @@ type APIConfig struct {
}

// DefaultConfig is a configuration that can be used as a fallback value.
var DefaultConfig = Config{
Database: &DatabaseConfig{
CacheSize: 16384,
},
Updater: &UpdaterConfig{
Interval: 1 * time.Hour,
},
API: &APIConfig{
Port: 6060,
HealthPort: 6061,
Timeout: 900 * time.Second,
},
Notifier: &NotifierConfig{
Attempts: 5,
RenotifyInterval: 2 * time.Hour,
},
func DefaultConfig() Config {
return Config{
Database: &DatabaseConfig{
CacheSize: 16384,
},
Updater: &UpdaterConfig{
Interval: 1 * time.Hour,
},
API: &APIConfig{
Port: 6060,
HealthPort: 6061,
Timeout: 900 * time.Second,
},
Notifier: &NotifierConfig{
Attempts: 5,
RenotifyInterval: 2 * time.Hour,
},
}
}

// Load is a shortcut to open a file, read it, and generate a Config.
// It supports relative and absolute paths. Given "", it returns DefaultConfig.
func Load(path string) (config *Config, err error) {
config = &DefaultConfig
var cfgFile File
cfgFile.Clair = DefaultConfig()
if path == "" {
return
}
Expand All @@ -103,7 +106,6 @@ func Load(path string) (config *Config, err error) {
return
}

var cfgFile File
err = yaml.Unmarshal(d, &cfgFile)
if err != nil {
return
Expand Down

0 comments on commit 20af787

Please sign in to comment.