Sha256: 7032efa1d405e254ab4ed16d3f473fbc338ba63dc8e5ab033639cf236011a75e

Contents?: true

Size: 919 Bytes

Versions: 21

Compression:

Stored size: 919 Bytes

Contents

module VagrantPlugins
  module Invade
    module Builder

      require 'erubis'

      class VM

        attr_reader :result
        attr_accessor :machine_name, :vm_data

        def initialize(machine_name, vm_data, result: nil)
          @machine_name = machine_name
          @vm_data  = vm_data
          @result   = result
        end

        def build
          b = binding
          template_file = "#{TEMPLATE_PATH}/vm/vm.erb"

          begin

            # Get machine name
            machine_name = @machine_name

            # Values for vm section
            box  = @vm_data['box']
            url   = @vm_data['url']
            hostname = @vm_data['hostname']

            eruby = Erubis::Eruby.new(File.read(template_file))
            @result = eruby.result b
          rescue TypeError, SyntaxError, SystemCallError => e
            raise(e)
          end
        end
      end
    end
  end
end

Version data entries

21 entries across 21 versions & 1 rubygems

Version Path
vagrant-invade-0.5.5 lib/vagrant-invade/builder/vm.rb
vagrant-invade-0.5.4 lib/vagrant-invade/builder/vm.rb
vagrant-invade-0.5.3 lib/vagrant-invade/builder/vm.rb
vagrant-invade-0.5.2 lib/vagrant-invade/builder/vm.rb
vagrant-invade-0.5.1 lib/vagrant-invade/builder/vm.rb
vagrant-invade-0.5.0 lib/vagrant-invade/builder/vm.rb
vagrant-invade-0.4.8 lib/vagrant-invade/builder/vm.rb
vagrant-invade-0.4.7 lib/vagrant-invade/builder/vm.rb
vagrant-invade-0.4.6 lib/vagrant-invade/builder/vm.rb
vagrant-invade-0.4.5 lib/vagrant-invade/builder/vm.rb
vagrant-invade-0.4.4 lib/vagrant-invade/builder/vm.rb
vagrant-invade-0.4.3 lib/vagrant-invade/builder/vm.rb
vagrant-invade-0.4.2 lib/vagrant-invade/builder/vm.rb
vagrant-invade-0.4.1 lib/vagrant-invade/builder/vm.rb
vagrant-invade-0.4.0 lib/vagrant-invade/builder/vm.rb
vagrant-invade-0.4.0.pre.alpha lib/vagrant-invade/builder/vm.rb
vagrant-invade-0.3.4 lib/vagrant-invade/builder/vm.rb
vagrant-invade-0.3.3 lib/vagrant-invade/builder/vm.rb
vagrant-invade-0.3.2 lib/vagrant-invade/builder/vm.rb
vagrant-invade-0.3.0 lib/vagrant-invade/builder/vm.rb