lib/foreman/export/base.rb in ypadlyak-foreman-0.81.0 vs lib/foreman/export/base.rb in ypadlyak-foreman-0.85.0

- old
+ new

@@ -98,10 +98,16 @@ return unless File.exists?(filename) say "cleaning up: #{filename}" FileUtils.rm(filename) end + def clean_dir(dirname) + return unless File.exists?(dirname) + say "cleaning up directory: #{dirname}" + FileUtils.rm_r(dirname) + end + def shell_quote(value) Shellwords.escape(value) end # deprecated @@ -127,11 +133,15 @@ File.read(matchers.detect { |m| File.exists?(m) }) end end def write_template(name, target, binding) - compiled = ERB.new(export_template(name), nil, '-').result(binding) + compiled = if ERB.instance_method(:initialize).parameters.assoc(:key) # Ruby 2.6+ + ERB.new(export_template(name), trim_mode: '-').result(binding) + else + ERB.new(export_template(name), nil, '-').result(binding) + end write_file target, compiled end def chmod(mode, file) say "setting #{file} to mode #{mode}" @@ -139,9 +149,14 @@ end def create_directory(dir) say "creating: #{dir}" FileUtils.mkdir_p(File.join(location, dir)) + end + + def create_symlink(link, target) + say "symlinking: #{link} -> #{target}" + FileUtils.symlink(target, File.join(location, link)) end def write_file(filename, contents) say "writing: #{filename}"