diff options
author | Go MAEDA <maeda@farend.jp> | 2021-12-08 01:23:51 +0000 |
---|---|---|
committer | Go MAEDA <maeda@farend.jp> | 2021-12-08 01:23:51 +0000 |
commit | 1ae29debf4efbf5406221376bb062ff7d0efe310 (patch) | |
tree | cd3754afd484cf335ab9606f20621ef49f51ab54 | |
parent | 080a8d06684fb2b290d55bef2ed76d82d71a6d46 (diff) | |
download | redmine-1ae29debf4efbf5406221376bb062ff7d0efe310.tar.gz redmine-1ae29debf4efbf5406221376bb062ff7d0efe310.zip |
Fix redmine:plugins:assets rake task fails (#36287, #32938).
Patch by Mizuki ISHIKAWA.
git-svn-id: http://svn.redmine.org/redmine/trunk@21300 e93f8b46-1217-0410-a6f0-8f06a7374b81
-rw-r--r-- | lib/redmine/plugin_loader.rb | 8 | ||||
-rw-r--r-- | lib/tasks/redmine.rake | 2 | ||||
-rw-r--r-- | test/unit/lib/redmine/plugin_loader_test.rb | 14 |
3 files changed, 21 insertions, 3 deletions
diff --git a/lib/redmine/plugin_loader.rb b/lib/redmine/plugin_loader.rb index 7b05a8a3d..1d2f2db48 100644 --- a/lib/redmine/plugin_loader.rb +++ b/lib/redmine/plugin_loader.rb @@ -136,8 +136,12 @@ module Redmine @plugin_directories end - def self.mirror_assets - directories.each(&:mirror_assets) + def self.mirror_assets(name=nil) + if name.present? + directories.find{|d| d.to_s == File.join(directory, name)}.mirror_assets + else + directories.each(&:mirror_assets) + end end end end diff --git a/lib/tasks/redmine.rake b/lib/tasks/redmine.rake index 2bebaf18c..c7c257bfc 100644 --- a/lib/tasks/redmine.rake +++ b/lib/tasks/redmine.rake @@ -150,7 +150,7 @@ DESC name = ENV['NAME'] begin - Redmine::Plugin.mirror_assets(name) + Redmine::PluginLoader.mirror_assets(name) rescue Redmine::PluginNotFound abort "Plugin #{name} was not found." end diff --git a/test/unit/lib/redmine/plugin_loader_test.rb b/test/unit/lib/redmine/plugin_loader_test.rb index 43d100521..2b103420e 100644 --- a/test/unit/lib/redmine/plugin_loader_test.rb +++ b/test/unit/lib/redmine/plugin_loader_test.rb @@ -41,6 +41,20 @@ class Redmine::PluginLoaderTest < ActiveSupport::TestCase assert File.exist?("#{@klass.public_directory}/foo_plugin/stylesheets/foo.css") end + def test_mirror_assets + Redmine::PluginLoader.mirror_assets + + assert File.exist?("#{@klass.public_directory}/foo_plugin") + assert File.exist?("#{@klass.public_directory}/foo_plugin/stylesheets/foo.css") + end + + def test_mirror_assets_with_plugin_name + Redmine::PluginLoader.mirror_assets('foo_plugin') + + assert File.exist?("#{@klass.public_directory}/foo_plugin") + assert File.exist?("#{@klass.public_directory}/foo_plugin/stylesheets/foo.css") + end + def clear_public FileUtils.rm_rf 'tmp/public' end |