Sha256: db2b326fd831dee0d34e0ff03d14ef1b69e8284f5540b353a0d8a97fb7764b43

Contents?: true

Size: 990 Bytes

Versions: 2

Compression:

Stored size: 990 Bytes

Contents

module Upstart::Exporter::Options
  class Global < Hash
    include Upstart::Exporter::Errors

    DEFAULTS = {
      'helper_dir' => '/var/local/upstart_helpers/',
      'upstart_dir' => '/etc/init/',
      'run_user' => 'service',
      'run_group' => 'service',
      'prefix' => 'fb-',
      'start_on_runlevel' => '[3]',
      'stop_on_runlevel' => '[3]',
      'kill_timeout' => 30
    }

    CONF = '/etc/upstart-exporter.yaml'

    def initialize
      super
      config = if FileTest.file?(CONF)
        YAML::load(File.read(CONF))
      else
        $stderr.puts "#{CONF} not found"
        {}
      end
      error "#{CONF} is not a valid YAML config" unless config.is_a?(Hash)
      DEFAULTS.keys.each do |param|
        value = if config[param]
          config[param]
        else
          $stderr.puts "Param #{param} is not set, taking default value #{DEFAULTS[param]}"
          DEFAULTS[param]
        end
        self[param.to_sym] = value
      end
    end

  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
upstart-exporter-2.1.2 lib/upstart-exporter/options/global.rb
upstart-exporter-2.1.1 lib/upstart-exporter/options/global.rb