aboutsummaryrefslogtreecommitdiffstats
path: root/railties/lib
diff options
context:
space:
mode:
authorPiotr Sarnacki <drogus@gmail.com>2010-07-18 23:23:54 +0200
committerPiotr Sarnacki <drogus@gmail.com>2010-09-03 22:59:04 +0200
commit7cccfed5943cddd6d72ed0df0ee7291cca9025ad (patch)
tree5750097c50f8359a4a83ffce97e41d60d9d87af6 /railties/lib
parent15f95b98ac048407a1ce6873bb02fc5fbb6c991c (diff)
downloadrails-7cccfed5943cddd6d72ed0df0ee7291cca9025ad.tar.gz
rails-7cccfed5943cddd6d72ed0df0ee7291cca9025ad.tar.bz2
rails-7cccfed5943cddd6d72ed0df0ee7291cca9025ad.zip
Allow Engines loading its own environment file from config/environments
Diffstat (limited to 'railties/lib')
-rw-r--r--railties/lib/rails/application.rb4
-rw-r--r--railties/lib/rails/application/bootstrap.rb7
-rw-r--r--railties/lib/rails/application/configuration.rb1
-rw-r--r--railties/lib/rails/engine.rb9
-rw-r--r--railties/lib/rails/engine/configuration.rb1
5 files changed, 12 insertions, 10 deletions
diff --git a/railties/lib/rails/application.rb b/railties/lib/rails/application.rb
index 72e5be2b9a..cbb1aad68f 100644
--- a/railties/lib/rails/application.rb
+++ b/railties/lib/rails/application.rb
@@ -43,10 +43,6 @@ module Rails
class << self
private :new
- def configure(&block)
- class_eval(&block)
- end
-
def instance
if self == Rails::Application
if Rails.application
diff --git a/railties/lib/rails/application/bootstrap.rb b/railties/lib/rails/application/bootstrap.rb
index 44e26b5713..e39b3bc705 100644
--- a/railties/lib/rails/application/bootstrap.rb
+++ b/railties/lib/rails/application/bootstrap.rb
@@ -6,10 +6,7 @@ module Rails
module Bootstrap
include Initializable
- initializer :load_environment_config do
- environment = config.paths.config.environments.to_a.first
- require environment if environment
- end
+ initializer :load_environment_hook do end
initializer :load_active_support do
require 'active_support/dependencies'
@@ -73,4 +70,4 @@ module Rails
end
end
end
-end \ No newline at end of file
+end
diff --git a/railties/lib/rails/application/configuration.rb b/railties/lib/rails/application/configuration.rb
index a20208f8d5..c248d41e59 100644
--- a/railties/lib/rails/application/configuration.rb
+++ b/railties/lib/rails/application/configuration.rb
@@ -48,7 +48,6 @@ module Rails
paths.app.controllers << builtin_controller if builtin_controller
paths.config.database "config/database.yml"
paths.config.environment "config/environment.rb"
- paths.config.environments "config/environments", :glob => "#{Rails.env}.rb"
paths.lib.templates "lib/templates"
paths.log "log/#{Rails.env}.log"
paths.tmp "tmp"
diff --git a/railties/lib/rails/engine.rb b/railties/lib/rails/engine.rb
index a602dac5ff..efde82d1ed 100644
--- a/railties/lib/rails/engine.rb
+++ b/railties/lib/rails/engine.rb
@@ -129,6 +129,10 @@ module Rails
@endpoint
end
+ def configure(&block)
+ class_eval(&block)
+ end
+
protected
def method_missing(*args, &block)
@@ -249,6 +253,11 @@ module Rails
# consistently executed after all the initializers above across all engines.
end
+ initializer :load_environment_config, :before => :load_environment_hook do
+ environment = config.paths.config.environments.to_a.first
+ require environment if environment
+ end
+
protected
def default_middleware_stack
ActionDispatch::MiddlewareStack.new
diff --git a/railties/lib/rails/engine/configuration.rb b/railties/lib/rails/engine/configuration.rb
index 06e7222753..bf3ad1f26b 100644
--- a/railties/lib/rails/engine/configuration.rb
+++ b/railties/lib/rails/engine/configuration.rb
@@ -28,6 +28,7 @@ module Rails
paths.config.initializers "config/initializers", :glob => "**/*.rb"
paths.config.locales "config/locales", :glob => "*.{rb,yml}"
paths.config.routes "config/routes.rb"
+ paths.config.environments "config/environments", :glob => "#{Rails.env}.rb"
paths.public "public"
paths.public.javascripts "public/javascripts"
paths.public.stylesheets "public/stylesheets"