Sha256: 0315a07fae9ed45b42ae47a92f07654a7d07d343a150d7479b46a0b2dd1018e7

Contents?: true

Size: 1.36 KB

Versions: 21

Compression:

Stored size: 1.36 KB

Contents

module VagrantPlugins
  module Invade
    module Builder
      module Network
        require 'erubis'

        class ForwardedPort

          attr_reader :result
          attr_accessor :machine_name, :forwarded_port_data

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

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

            begin

              # Get machine name
              machine_name = @machine_name

              # Values for network section
              ip = @forwarded_port_data['ip']
              dhcp = @forwarded_port_data['dhcp']
              guest = @forwarded_port_data['guest']
              guest_ip = @forwarded_port_data['guest_ip']
              host = @forwarded_port_data['host']
              host_ip = @forwarded_port_data['host_ip']
              protocol = @forwarded_port_data['protocol']
              auto_correct = @forwarded_port_data['auto_correct']

              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
end

Version data entries

21 entries across 21 versions & 1 rubygems

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