module ModuleSync::Renderer
Public Class Methods
build(target_name)
click to toggle source
# File lib/modulesync/renderer.rb, line 13 def self.build(target_name) template_file = if !File.exist?("#{target_name}.erb") && File.exist?(target_name) STDERR.puts "Warning: using '#{target_name}' as template without '.erb' suffix" target_name else "#{target_name}.erb" end erb_obj = ERB.new(File.read(template_file), nil, '-') erb_obj.filename = template_file erb_obj.def_method(ForgeModuleFile, 'render()', template_file) erb_obj end
remove(file)
click to toggle source
# File lib/modulesync/renderer.rb, line 26 def self.remove(file) File.delete(file) if File.exist?(file) end
render(_template, configs = {}, metadata = {})
click to toggle source
# File lib/modulesync/renderer.rb, line 30 def self.render(_template, configs = {}, metadata = {}) ForgeModuleFile.new(configs, metadata).render end
sync(template, target_name)
click to toggle source
# File lib/modulesync/renderer.rb, line 34 def self.sync(template, target_name) path = target_name.rpartition('/').first FileUtils.mkdir_p(path) unless path.empty? File.open(target_name, 'w') do |file| file.write(template) end end