Sha256: 2f3638a6daa0a5cb0d657148771b5210398465e42540559b6951347a35005602
Contents?: true
Size: 1.38 KB
Versions: 29
Compression:
Stored size: 1.38 KB
Contents
module VagrantPlugins module Parallels module Action class PrepareForwardedPortCollisionParams def initialize(app, env) @app = app end def call(env) # Port Forwarding feature is available only with PD >= 10 if !env[:machine].provider.pd_version_satisfies?('>= 10') return @app.call(env) end # Get the forwarded ports used by other virtual machines and # consider those in use as well. env[:port_collision_extra_in_use] = env[:machine].provider.driver.read_used_ports # We can always repair the collision because port forwarding # are configured globally, not per each VM. env[:port_collision_repair] = true # Build the remap for any existing collision detections remap = {} env[:port_collision_remap] = remap env[:machine].provider.driver.read_forwarded_ports.each do |r| env[:machine].config.vm.networks.each do |type, options| next if type != :forwarded_port # If the ID matches the name of the forwarded port, then # remap. if options[:id] == r[:name] remap[options[:host]] = r[:hostport] break end end end @app.call(env) end end end end end
Version data entries
29 entries across 29 versions & 1 rubygems