class Environmenter::Loader

Attributes

config[R]

Public Class Methods

new(config = nil) click to toggle source
# File lib/environmenter/loader.rb, line 5
def initialize(config = nil)
  @config = config
end

Public Instance Methods

load!() click to toggle source
# File lib/environmenter/loader.rb, line 9
def load!
  set_environment
  load_rails
  require_from_config
end
load_rails() click to toggle source
# File lib/environmenter/loader.rb, line 20
def load_rails
  begin
    require 'rails'
    if ::Rails.application.respond_to?(:eager_load)
      require File.expand_path('config/environment.rb')
      ::Rails.application.eager_load!
    else
      require File.expand_path('config/application.rb')
      ::Rails::Application.initializer "lapine.load_rails" do
        ::Rails.application.config.eager_load = true
      end
      require File.expand_path('config/environment.rb')
    end
  rescue LoadError
  end
end
require_from_config() click to toggle source
# File lib/environmenter/loader.rb, line 37
def require_from_config
  return unless config

  if config.respond_to?(:require) && config.require
    return config.require.each do |file|
      require File.expand_path(file)
    end
  end

  if config.respond_to?(:[])
    if config['require']
      return config['require'].each do |file|
        require File.expand_path(file)
      end
    end

    if config[:require]
      return config[:require].each do |file|
        require File.expand_path(file)
      end
    end
  end
end
set_environment() click to toggle source
# File lib/environmenter/loader.rb, line 15
def set_environment
  ENV['RAILS_ENV'] ||= 'development'
  ENV['RACK_ENV'] ||= ENV['RAILS_ENV']
end