summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--lib/redmine/plugin.rb12
-rw-r--r--lib/tasks/redmine.rake8
2 files changed, 15 insertions, 5 deletions
diff --git a/lib/redmine/plugin.rb b/lib/redmine/plugin.rb
index 24f921f53..faa48f46a 100644
--- a/lib/redmine/plugin.rb
+++ b/lib/redmine/plugin.rb
@@ -359,10 +359,14 @@ module Redmine #:nodoc:
end
end
- # Mirrors all plugins' assets to public/plugin_assets
- def self.mirror_assets
- all.each do |plugin|
- plugin.mirror_assets
+ # Mirrors assets from one or all plugins to public/plugin_assets
+ def self.mirror_assets(name=nil)
+ if name.present?
+ find(name).mirror_assets
+ else
+ all.each do |plugin|
+ plugin.mirror_assets
+ end
end
end
diff --git a/lib/tasks/redmine.rake b/lib/tasks/redmine.rake
index a75483af2..90e642588 100644
--- a/lib/tasks/redmine.rake
+++ b/lib/tasks/redmine.rake
@@ -74,7 +74,13 @@ namespace :redmine do
desc 'Copies plugins assets into the public directory.'
task :assets => :environment do
- Redmine::Plugin.mirror_assets
+ name = ENV['name']
+
+ begin
+ Redmine::Plugin.mirror_assets(name)
+ rescue Redmine::PluginNotFound
+ abort "Plugin #{name} was not found."
+ end
end
end
end