foreman-export-initscript/lib/foreman/export/initscript.rb
2013-01-01 16:24:02 -05:00

21 lines
738 B
Ruby

require "erb"
require "foreman/export"
class Foreman::Export::Initscript < Foreman::Export::Base
def export
error("Must specify a location") unless location
FileUtils.mkdir_p(location) rescue error("Could not create: #{location}")
name = "initscript/master.erb"
name_without_first = name.split("/")[1..-1].join("/")
matchers = []
matchers << File.join(options[:template], name_without_first) if options[:template]
matchers << File.expand_path("~/.foreman/templates/#{name}")
matchers << File.expand_path("../../../../data/export/#{name}", __FILE__)
path = File.read(matchers.detect { |m| File.exists?(m) })
compiled = ERB.new(path).result(binding)
write_file "#{app}", compiled
end
end