Module: VagrantPlugins::ProviderVeertu::Util::CompileForwardedPorts

Includes:
Vagrant::Util::ScopedHashOverride
Included in:
Action::ForwardPorts
Defined in:
lib/vagrant-veertu/util/compile_forwarded_ports.rb

Instance Method Summary collapse

Instance Method Details

#compile_forwarded_ports(config) ⇒ Object

This method compiles the forwarded ports into ForwardedPort models.



11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
# File 'lib/vagrant-veertu/util/compile_forwarded_ports.rb', line 11

def compile_forwarded_ports(config)
  mappings = {}

  config.vm.networks.each do |type, options|
    if type == :forwarded_port
      guest_port = options[:guest]
      host_port  = options[:host]
      protocol   = options[:protocol] || "tcp"
      options    = scoped_hash_override(options, :veertu)
      id         = options[:id]

      # If the forwarded port was marked as disabled, ignore.
      next if options[:disabled]

      mappings[host_port.to_s + protocol.to_s] =
        Model::ForwardedPort.new(id, host_port, guest_port, options)
    end
  end

  mappings.values
end