Taliesin Sisson
9fbd1e472a
Add support for mac spoofing and dynamic memory.
...
To enable nested virtualization, mac spoofing, no dynamic memory and at least 4gb of ram should be set for the vm. Set warning if this has not been done.
Detected Virtualization Extensions are supported by the machine your are running on, as it only works for Windows 10 and Windows Server 2016 onwards.
2016-12-12 22:45:04 +00:00
Patrick Lang
1277a25d0b
Fix type casting
2016-12-12 22:45:03 +00:00
Patrick Lang
6d391fc34a
Adding support for nested Hyper-V
2016-12-12 22:45:02 +00:00
Patrick Lang
f94c2cd2f7
Adding nested virtualization support
2016-12-12 22:45:01 +00:00
Taliesin Sisson
7ce9203530
Enable-VMIntegrationService cmdlet has a language dependent value for -Name option. So avoid using it, as it will break on machines with different languages.
2016-12-12 22:45:00 +00:00
Taliesin Sisson
e636c3de3c
Dvd drive creation will auto select the controller number and controller location. This fixes the bug of first generation machines not being able to add more then 1 dvd drive.
2016-12-12 22:44:58 +00:00
Taliesin Sisson
17597b48e1
Base64 encode powershell to avoid any necessary escaping
2016-12-12 22:44:54 +00:00
Taliesin Sisson
52c6cd5fc1
Test should run and pass even when run on an environment that does not have Powershel.
2016-12-12 22:44:53 +00:00
Taliesin Sisson
8c3239770d
Skip these tests on platforms that don't have powershell installed
2016-12-12 22:44:52 +00:00
Taliesin Sisson
5d5809b27e
Make hiding of progress backward compatible with old versions of powershell
2016-12-12 22:44:48 +00:00
Taliesin Sisson
de447779f8
Windows Server 2016 won't let you set the first boot device
2016-12-12 22:44:46 +00:00
Taliesin Sisson
181132f32b
Forget to pass in the dvd drive to eject the iso from
2016-12-12 22:44:45 +00:00
Gildas Cherruel
872fc559f5
Export of Hyper-V/VMCX machines
2016-12-12 22:44:45 +00:00
Taliesin Sisson
d878f4dd8e
A workaround for bug in Windows 10 and Windows 2016 where you have to specify a path when creating a dvd drive
2016-12-12 22:44:44 +00:00
Taliesin Sisson
4ab2e8b252
try to get the virtual keyboard a number of different ways. This should hopefully work for Windows 7, Window 10 and Windows Server 2016
2016-12-12 22:44:43 +00:00
Taliesin Sisson
056fc59166
Do not try to type scancodes if there are none. We haven't figured out how to do this on Windows 10 or Windows 7 and below. This will at least allow other types of VMs to be built.
2016-12-12 22:44:42 +00:00
Gildas Cherruel
8734c5b25f
Remove all Dvd Drives on Generation 1
2016-12-12 22:44:42 +00:00
Taliesin Sisson
199bee6885
Need to sleep after sending previous characters, not before
2016-12-12 22:44:41 +00:00
Taliesin Sisson
d1961b7c8e
Echo output when its used
2016-12-12 22:44:40 +00:00
Taliesin Sisson
f8e3970d87
By default a gen 1 vm get a dvd drive. Remove it on creation so that it behaves the same as gen 2.
2016-12-12 22:44:38 +00:00
Taliesin Sisson
18241e5215
Setting boot drive is generation specific
2016-12-12 22:44:37 +00:00
Taliesin Sisson
93a2615f7a
Fix gen 1 creation of dvd
2016-12-12 22:44:37 +00:00
Taliesin Sisson
07764c631e
The default for wait is 1 second
2016-12-12 22:44:36 +00:00
Taliesin Sisson
4b394c8563
Write output will put ouput from function, so we don't want to be getting line from output of function
...
Fix unit tests for not showing progress stream when using powershell
Ensure that progress stream does not get leaked into stdout
Using Write-Output instead of Write-Host since PS v5 now leaks the host stream to stderr
2016-12-12 22:44:33 +00:00
Taliesin Sisson
3cb621f890
Get rid of mount and unmount that does not specify controller location exactly
...
Handle cleanup if unmount step has not already done so
2016-12-12 22:44:30 +00:00
Taliesin Sisson
010d171bec
GuestAdditionsMode and GuestAdditionsPath can be set in config. If GuestAdditionsMode == "attach" it will mount the HyperV Integration Services ISO. If GuestAdditionsPath is set, then it will be used as an alternative to where the HyperV Integration Service ISO is.
...
Included the build step to download ISO, so iso_urls works properly now.
Online activation should be done via provisioner
Installation of integration services should be done via provisioner
Cleaned up the way dvd drives are mounted and unmounted (still need to implement feature to find unused drives before adding a new one)
Cleaned up the way floppies are mounted and unmounted
2016-12-12 22:44:27 +00:00
Taliesin Sisson
422efeeaf6
Make use of driver instead of directly referencing hyper
...
Move inline powershell to hyperv
2016-12-12 22:44:26 +00:00
Taliesin Sisson
9fd635742c
Always force turn off vm
2016-12-12 22:44:24 +00:00
Taliesin Sisson
9cf8b18e09
If there is only one ip address on a card we need to force it to be an array. Otherwise powershell may treat it as a property.
...
Stop-Vm with force parameter to ensure that powershell prompts will not appear
2016-12-12 22:44:22 +00:00
Taliesin Sisson
efafed4f37
Copy the folder structure correctly
2016-12-12 22:44:15 +00:00
Taliesin Sisson
5f2c12324c
No need to remove floppy controller for 2nd generation vms
...
Don't want to be prompted for confirmation from powershell commandlets
2016-12-12 22:44:14 +00:00
Taliesin Sisson
02db768018
With generation 2 machine by default a dvd drive is not created. So create a dvd drive for os if it does not exist.
...
Allow secure boot mode to be configured from config.
2016-12-12 22:44:07 +00:00
Taliesin Sisson
aa1f1da1ff
Support for boot_command
...
Setup local http server
Add compaction of hard drive
GetHostAdapterIpAddress function added for hyperv
renamed step step_start_vm to step_run to fall in ine with naming conventions of other builders
2016-12-12 22:44:07 +00:00
Taliesin Sisson
03b0698edd
Remove devices after it has been shut down
...
Attempt to stop vm, before deleting it
2016-12-12 22:44:06 +00:00
Taliesin Sisson
2d7cfcd65d
Throw error if we can't get mac or ip address during steps
2016-12-12 22:44:05 +00:00
Taliesin Sisson
87b3dec3d2
Wait until WinRM is available, before continuing with install. This is how other system like VeeWee do it.
...
Add support for number of cpus to use for vm
Add support for vm generation
2016-12-12 22:44:04 +00:00
Taliesin Sisson
469415fdfb
Tests where for an old version of powershell class. Changed for the new one
2016-12-12 22:44:03 +00:00
Taliesin Sisson
1fe4c501e4
Port of https://github.com/pbolduc/packer-hyperv/
...
Remove steps that are windows specific
2016-12-12 22:44:01 +00:00