diff options
Diffstat (limited to 'railties')
-rw-r--r-- | railties/CHANGELOG.md | 2 | ||||
-rw-r--r-- | railties/lib/rails/engine.rb | 5 | ||||
-rw-r--r-- | railties/test/railties/engine_test.rb | 10 |
3 files changed, 14 insertions, 3 deletions
diff --git a/railties/CHANGELOG.md b/railties/CHANGELOG.md index 01df2c5b64..1f88843ee9 100644 --- a/railties/CHANGELOG.md +++ b/railties/CHANGELOG.md @@ -1,5 +1,7 @@ ## Rails 4.0.0 (unreleased) ## +* Load all environments available in `config.paths["config/environments"]`. *Piotr Sarnacki* + * The application generator generates `public/humans.txt` with some basic data. *Paul Campbell* * Add `config.queue_consumer` to allow the default consumer to be configurable. *Carlos Antonio da Silva* diff --git a/railties/lib/rails/engine.rb b/railties/lib/rails/engine.rb index ef48bc4f94..47856c87c6 100644 --- a/railties/lib/rails/engine.rb +++ b/railties/lib/rails/engine.rb @@ -567,8 +567,9 @@ module Rails end initializer :load_environment_config, :before => :load_environment_hook, :group => :all do - environment = paths["config/environments"].existent.first - require environment if environment + paths["config/environments"].existent.each do |environment| + require environment + end end initializer :append_assets_path, :group => :all do |app| diff --git a/railties/test/railties/engine_test.rb b/railties/test/railties/engine_test.rb index 9a6b2b66ca..55f72f532f 100644 --- a/railties/test/railties/engine_test.rb +++ b/railties/test/railties/engine_test.rb @@ -537,10 +537,11 @@ YAML assert_equal "foo", last_response.body end - test "it loads its environment file" do + test "it loads its environments file" do @plugin.write "lib/bukkits.rb", <<-RUBY module Bukkits class Engine < ::Rails::Engine + config.paths["config/environments"].push "config/environments/additional.rb" end end RUBY @@ -551,9 +552,16 @@ YAML end RUBY + @plugin.write "config/environments/additional.rb", <<-RUBY + Bukkits::Engine.configure do + config.additional_environment_loaded = true + end + RUBY + boot_rails assert Bukkits::Engine.config.environment_loaded + assert Bukkits::Engine.config.additional_environment_loaded end test "it passes router in env" do |