class Jerakia::Config

Attributes

policydir[R]
server_url[R]

Public Class Methods

load_from_file(file = '/etc/jerakia/jerakia.yaml') click to toggle source
# File lib/jerakia/config.rb, line 7
def self.load_from_file(file = '/etc/jerakia/jerakia.yaml')
  new YAML.load_file(file)
rescue Psych::SyntaxError => e
  raise Jerakia::FileParseError, "Could not parse config file #{file}, #{e.message}"
end
new(config = {}) click to toggle source
# File lib/jerakia/config.rb, line 13
def initialize(config = {})
  config_with_defaults = defaults.merge(config)
  @policydir = config_with_defaults['policydir']
  @server_url = config_with_defaults['server_url']
  @configdata = config_with_defaults
end

Public Instance Methods

[](key) click to toggle source
# File lib/jerakia/config.rb, line 37
def [](key)
  @configdata[key.to_s]
end
defaults() click to toggle source
# File lib/jerakia/config.rb, line 20
def defaults
  {
    'policydir'     => '/etc/jerakia/policy.d',
    'plugindir'     => '/var/lib/jerakia/plugins',
    'logfile'       => '/var/log/jerakia/jerakia.log',
    'databasedir'   => '/var/db/jerakia',
    'loglevel'      => 'info',
    'vardir'        => '/var/lib/jerakia',
    'piddir'        => '/var/run',
    'enable_schema' => true,
  }
end
to_hash() click to toggle source
# File lib/jerakia/config.rb, line 33
def to_hash
  @configdata
end