Module: ModuleSync::Renderer
- Defined in:
- lib/modulesync/renderer.rb
Defined Under Namespace
Classes: ForgeModuleFile
Class Method Summary collapse
- .build(target_name) ⇒ Object
- .remove(file) ⇒ Object
- .render(_template, configs = {}, metadata = {}) ⇒ Object
- .sync(template, target_name) ⇒ Object
Class Method Details
.build(target_name) ⇒ Object
13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 |
# 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 template = File.read(template_file) erb_obj = if RUBY_VERSION >= '2.7' ERB.new(template, trim_mode: '-') else ERB.new(template, nil, '-') end erb_obj.filename = template_file erb_obj.def_method(ForgeModuleFile, 'render()', template_file) erb_obj end |
.remove(file) ⇒ Object
31 32 33 |
# File 'lib/modulesync/renderer.rb', line 31 def self.remove(file) File.delete(file) if File.exist?(file) end |
.render(_template, configs = {}, metadata = {}) ⇒ Object
35 36 37 |
# File 'lib/modulesync/renderer.rb', line 35 def self.render(_template, configs = {}, = {}) ForgeModuleFile.new(configs, ).render end |
.sync(template, target_name) ⇒ Object
39 40 41 42 |
# File 'lib/modulesync/renderer.rb', line 39 def self.sync(template, target_name) FileUtils.mkdir_p(File.dirname(target_name)) File.write(target_name, template) end |