| Module | Engines::Assets |
| In: |
lib/engines/assets.rb
|
Ensure that the plugin asset subdirectory of RAILS_ROOT/public exists, and that we‘ve added a little warning message to instruct developers not to mess with the files inside, since they‘re automatically generated.
# File lib/engines/assets.rb, line 13
13: def initialize_base_public_directory
14: dir = Engines.public_directory
15: unless File.exist?(dir)
16: Engines.logger.debug "Creating public engine files directory '#{dir}'"
17: FileUtils.mkdir_p(dir)
18: end
19: readme = File.join(dir, "README")
20: File.open(readme, 'w') { |f| f.puts @@readme } unless File.exist?(readme)
21: end
Replicates the subdirectories under the plugins‘s assets (or public) directory into the corresponding public directory. See also Plugin#public_directory for more.
# File lib/engines/assets.rb, line 26
26: def mirror_files_for(plugin)
27: return if plugin.public_directory.nil?
28: begin
29: Engines.logger.debug "Attempting to copy plugin assets from '#{plugin.public_directory}' to '#{Engines.public_directory}'"
30: Engines.mirror_files_from(plugin.public_directory, File.join(Engines.public_directory, plugin.name))
31: rescue Exception => e
32: Engines.logger.warn "WARNING: Couldn't create the public file structure for plugin '#{plugin.name}'; Error follows:"
33: Engines.logger.warn e
34: end
35: end