lib/veewee/provider/virtualbox/box/up.rb in veewee-0.3.1 vs lib/veewee/provider/virtualbox/box/up.rb in veewee-0.3.2

- old
+ new

@@ -11,23 +11,44 @@ gui_enabled=options['nogui']==true ? false : true raise Veewee::Error,"Box is already running" if self.running? - # Before we start,correct the ssh port if needed - forward=self.forwarding("guestssh") - guessed_port=guess_free_port(definition.ssh_host_port.to_i,definition.ssh_host_port.to_i+40).to_s - definition.ssh_host_port=guessed_port.to_s + if definition.winrm_user && definition.winrm_password # prefer winrm + # Before we start,correct the ssh/winrm port if needed + forward=self.forwarding("guestwinrm") + guessed_port=guess_free_port(definition.winrm_host_port.to_i,definition.winrm_host_port.to_i+40).to_s + definition.winrm_host_port=guessed_port.to_s + + unless forward.nil? + if guessed_port!=forward[:guest_port] + # Remove the existing one + self.delete_forwarding("guestwinrm") + env.ui.warn "Changing winrm port on UP from #{forward[:guest_port]} to #{guessed_port}" + self.add_winrm_nat_mapping + end + else + self.add_winrm_nat_mapping + end + + else - unless forward.nil? - if guessed_port!=forward[:guest_port] - # Remove the existing one - self.delete_forwarding("guestssh") - ui.warn "Changing ssh port from #{forward[:guest_port]} to #{guessed_port}" + # Before we start,correct the ssh port if needed + forward=self.forwarding("guestssh") + guessed_port=guess_free_port(definition.ssh_host_port.to_i,definition.ssh_host_port.to_i+40).to_s + definition.ssh_host_port=guessed_port.to_s + + unless forward.nil? + if guessed_port!=forward[:guest_port] + # Remove the existing one + self.delete_forwarding("guestssh") + env.ui.warn "Changing ssh port from #{forward[:guest_port]} to #{guessed_port}" self.add_ssh_nat_mapping + end + else + self.add_ssh_nat_mapping end - else - self.add_ssh_nat_mapping + end self.suppress_messages # Once assembled we start the machine