diff options
author | Sam Pohlenz <sam@sampohlenz.com> | 2009-12-28 08:48:07 +1030 |
---|---|---|
committer | Carl Lerche <carllerche@mac.com> | 2009-12-29 14:47:48 -0800 |
commit | 468bdb3ed8ee20fe4215e62f0f27513c70e2398c (patch) | |
tree | 7cc40ecfaa65f0d6acd701dc66a5ff10145b4b9a /railties/lib | |
parent | cbce027669ded4e951af3124cae23d6707357aea (diff) | |
download | rails-468bdb3ed8ee20fe4215e62f0f27513c70e2398c.tar.gz rails-468bdb3ed8ee20fe4215e62f0f27513c70e2398c.tar.bz2 rails-468bdb3ed8ee20fe4215e62f0f27513c70e2398c.zip |
Make plugins responsible for loading their own rake tasks
Signed-off-by: Carl Lerche <carllerche@mac.com>
Diffstat (limited to 'railties/lib')
-rw-r--r-- | railties/lib/rails/application.rb | 8 | ||||
-rw-r--r-- | railties/lib/rails/plugin.rb | 4 |
2 files changed, 5 insertions, 7 deletions
diff --git a/railties/lib/rails/application.rb b/railties/lib/rails/application.rb index 91c866d0c9..d714c5ac41 100644 --- a/railties/lib/rails/application.rb +++ b/railties/lib/rails/application.rb @@ -72,13 +72,7 @@ module Rails def load_tasks require "rails/tasks" - # Load all extension rake tasks - # TODO: Make all plugin objects respond to :load_tasks - plugins.each do |plugin| - plugin.load_tasks if plugin.respond_to? :load_tasks - end - # Load all plugin tasks - Dir["#{root}/vendor/plugins/*/**/tasks/**/*.rake"].sort.each { |ext| load ext } + plugins.each { |p| p.load_tasks } # Load all application tasks # TODO: extract out the path to the rake tasks Dir["#{root}/lib/tasks/**/*.rake"].sort.each { |ext| load ext } diff --git a/railties/lib/rails/plugin.rb b/railties/lib/rails/plugin.rb index b5e6953fef..c64042cf7d 100644 --- a/railties/lib/rails/plugin.rb +++ b/railties/lib/rails/plugin.rb @@ -85,6 +85,10 @@ module Rails Dir["#{path}/{lib}", "#{path}/app/{models,controllers,helpers}"] end + def load_tasks + Dir["#{path}/**/tasks/**/*.rake"].sort.each { |ext| load ext } + end + initializer :add_to_load_path, :after => :set_autoload_paths do |app| load_paths.each do |path| $LOAD_PATH << path |