class Packerman::Evaluator

Public Instance Methods

evaluate(template) click to toggle source
# File lib/packerman/evaluator.rb, line 2
def evaluate(template)
  Packerman::Repository.gather do
    instance_eval(on_packerman(template))
  end
end

Private Instance Methods

on_packerman(template) click to toggle source
# File lib/packerman/evaluator.rb, line 10
  def on_packerman(template)
    <<-EOS
      class Packerman::Dsl
        #{parse(template)}
      end
    EOS
  end
parse(template) click to toggle source
# File lib/packerman/evaluator.rb, line 18
def parse(template)
  parts = %w(Builders Provisioners AmiBlockDeviceMapping Variables)
  parts.inject(template) do |memo, part|
    memo.gsub(part, "#{part}.register")
  end
end