diff options
Diffstat (limited to 'lib')
| -rw-r--r-- | lib/oxidized/config.rb | 10 | 
1 files changed, 8 insertions, 2 deletions
| diff --git a/lib/oxidized/config.rb b/lib/oxidized/config.rb index 9c2faff..02698a6 100644 --- a/lib/oxidized/config.rb +++ b/lib/oxidized/config.rb @@ -1,6 +1,7 @@  module Oxidized    require 'asetus'    class NoConfig < OxidizedError; end +  class InvalidConfig < OxidizedError; end    class Config      Root      = File.join ENV['HOME'], '.config', 'oxidized'      Crash     = File.join Root, 'crash' @@ -39,8 +40,13 @@ module Oxidized      'juniper' => 'junos',    } -  CFGS.load       # load system+user configs, merge to Config.cfg -  CFG = CFGS.cfg  # convenienence, instead of Config.cfg.password, CFG.password +  begin +    CFGS.load # load system+user configs, merge to Config.cfg +  rescue => error +    raise InvalidConfig, "Error loading config: #{error.message}" +  ensure +    CFG = CFGS.cfg  # convenienence, instead of Config.cfg.password, CFG.password +  end    Log.level = Logger::INFO unless CFG.debug    raise NoConfig, 'edit ~/.config/oxidized/config' if CFGS.create | 
