24 lines
739 B
Ruby
24 lines
739 B
Ruby
module VagrantPlugins
|
|
module GuestWindows
|
|
module Cap
|
|
class Reboot
|
|
def self.wait_for_reboot(machine)
|
|
# Technically it should be possible to make it work with SSH
|
|
# too, but we don't yet.
|
|
return if machine.config.vm.communicator != :winrm
|
|
|
|
script = File.expand_path("../../scripts/reboot_detect.ps1", __FILE__)
|
|
script = File.read(script)
|
|
while machine.communicate.execute(script, error_check: false) != 0
|
|
sleep 10
|
|
end
|
|
|
|
# This re-establishes our symbolic links if they were
|
|
# created between now and a reboot
|
|
machine.communicate.execute("net use", error_check: false)
|
|
end
|
|
end
|
|
end
|
|
end
|
|
end
|