diff options
Diffstat (limited to 'config.go')
-rw-r--r-- | config.go | 15 |
1 files changed, 11 insertions, 4 deletions
@@ -13,14 +13,21 @@ type Config struct { const PLANR_CONFIG_FILE = "config.toml" -func DecodeConfig(configDir string) Config { - cfg := Config { } +// TODO: REMOVE +const STRICTLY_REQUIRE_CONFIG = false + +func DecodeConfig(configDir string) *Config { + cfg := new(Config) configFile := path.Join(configDir, PLANR_CONFIG_FILE) - if _, err := toml.DecodeFile(configFile, &cfg); err != nil { + if _, err := toml.DecodeFile(configFile, cfg); err != nil { + cfg = nil + // TODO: handle missing config - log.Fatalf("Could not decode global configuration %s: %v", configFile, err) + if STRICTLY_REQUIRE_CONFIG { + log.Fatalf("Could not decode global configuration %s: %v", configFile, err) + } } return cfg |