Sha256: 32ca9c97c3f16cffcb27a1ea46850b7f81694cec66e7b7c2d34b383ad2a14f52
Contents?: true
Size: 1.75 KB
Versions: 1
Compression:
Stored size: 1.75 KB
Contents
module Vagrant module Guest # A general Vagrant system implementation for "windows". # # Contributed by Chris McClimans <chris@hippiehacker.org> class Windows < Base # A custom config class which will be made accessible via `config.windows` # Here for whenever it may be used. class WindowsError < Errors::VagrantError error_namespace("vagrant.guest.windows") end def change_host_name(name) #### on windows, renaming a computer seems to require a reboot vm.channel.execute("wmic computersystem where name=\"%COMPUTERNAME%\" call rename name=\"#{name}\"") end def halt @vm.channel.execute("shutdown /s /t 1 /c \"Vagrant Halt\" /f /d p:4:1") # Wait until the VM's state is actually powered off. If this doesn't # occur within a reasonable amount of time (15 seconds by default), # then simply return and allow Vagrant to kill the machine. count = 0 while @vm.state != :poweroff count += 1 return if count >= @vm.config.linux.halt_timeout sleep @vm.config.windows.halt_check_interval end end def mount_shared_folder(name, guestpath, options) mount_script = TemplateRenderer.render(File.expand_path("#{File.dirname(__FILE__)}/../scripts/mount_volume.ps1"), :options => {:mount_point => guestpath, :name => name}) @vm.channel.execute(mount_script,{:shell => :powershell}) end def windows_path(path) p = '' if path =~ /^\// p << 'C:\\' end p << path p.gsub! /\//, "\\" p.gsub /\\\\{0,}/, "\\" end end end end Vagrant.guests.register(:windows) { Vagrant::Guest::Windows }
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
vagrant-windows-0.0.1 | lib/vagrant-windows/guest/windows.rb |