class Envvy::Engine

Attributes

config_path[RW]
env[RW]

Public Instance Methods

get(key) { |env| ... } click to toggle source
# File lib/envvy/engine.rb, line 61
def get(key, &block)
  if block_given?
    yield self.env[key]
  else
    return self.env[key]
  end
end
set_env(file) click to toggle source
# File lib/envvy/engine.rb, line 52
def set_env file
  self.env = {"js_config" => {}, "config" => {}}
  self.env.merge! YAML.load(File.read(file)) if File.exist?(file)

  if env[Rails.env]
    self.env.deep_merge!(self.env[Rails.env])
  end
end

Private Instance Methods

merge_current_env!(hash) click to toggle source
# File lib/envvy/engine.rb, line 71
def merge_current_env!(hash)
  rails_envs.each do |rails_env|
    if Rails.env == rails_env && hash[rails_env]
      hash.merge! hash[rails_env]
    end
    hash.delete rails_env
  end
end
rails_envs() click to toggle source
# File lib/envvy/engine.rb, line 80
def rails_envs
  @rails_envs ||=  Dir.glob(Rails.root + "config/environments/*.rb")
                      .map { |filename| File.basename(filename, ".rb") }
end