Sha256: d9f7925af6554fb5b4cb9786edc5636669377d32719d24b96d524df6af01e3f2

Contents?: true

Size: 655 Bytes

Versions: 2

Compression:

Stored size: 655 Bytes

Contents

require 'yaml'

module Kryten

  module Setup
    module_function

    def base_path
      File.expand_path(File.join(ENV['BUNDLE_GEMFILE'], '..'))
    end

    def configure
      classname = self.name.split('::')
      classname = if classname.one?
                    classname.first.downcase
                  else
                    classname[0...-1].collect(&:downcase).join('-')
                  end
      file = File.open(File.join(self.base_path, "config/#{classname}.yml"))
      YAML.load(file)[classname]
    end
  end

  class Config
    def self.fetch(entry)
      @config ||= Setup.configure
      @config.fetch(entry)
    end
  end

end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
kryten-0.3.5 lib/kryten/setup.rb
kryten-0.3.4 lib/kryten/setup.rb