providers/hyperv: style

This commit is contained in:
Mitchell Hashimoto 2014-02-26 21:29:55 -08:00
parent af4bc18c14
commit d1bdfe492b
1 changed files with 22 additions and 20 deletions

View File

@ -74,15 +74,14 @@ $notes = (Select-Xml -xml $vmconfig -XPath "//notes").node.'#text'
$more_vm_params = @{ $more_vm_params = @{
ProcessorCount = $processors ProcessorCount = $processors
MemoryStartupBytes = $MemoryStartupBytes MemoryStartupBytes = $MemoryStartupBytes
} }
If ($dynamicmemory) { If ($dynamicmemory) {
$more_vm_params.Add("DynamicMemory",$True) $more_vm_params.Add("DynamicMemory",$True)
$more_vm_params.Add("MemoryMinimumBytes",$MemoryMinimumBytes) $more_vm_params.Add("MemoryMinimumBytes",$MemoryMinimumBytes)
$more_vm_params.Add("MemoryMaximumBytes", $MemoryMaximumBytes) $more_vm_params.Add("MemoryMaximumBytes", $MemoryMaximumBytes)
} } else {
else {
$more_vm_params.Add("StaticMemory",$True) $more_vm_params.Add("StaticMemory",$True)
} }
@ -95,36 +94,38 @@ $vm | Set-VM @more_vm_params -Passthru
# Add drives to the virtual machine # Add drives to the virtual machine
$controllers = Select-Xml -xml $vmconfig -xpath "//*[starts-with(name(.),'controller')]" $controllers = Select-Xml -xml $vmconfig -xpath "//*[starts-with(name(.),'controller')]"
# A regular expression pattern to pull the number from controllers # A regular expression pattern to pull the number from controllers
[regex]$rx="\d" [regex]$rx="\d"
foreach ($controller in $controllers) { foreach ($controller in $controllers) {
$node = $controller.Node $node = $controller.Node
# Check for SCSI
if ($node.ParentNode.ChannelInstanceGuid) { # Check for SCSI
$ControllerType = "SCSI" if ($node.ParentNode.ChannelInstanceGuid) {
} $ControllerType = "SCSI"
else { } else {
$ControllerType = "IDE" $ControllerType = "IDE"
} }
$drives = $node.ChildNodes | where {$_.pathname."#text"} $drives = $node.ChildNodes | where {$_.pathname."#text"}
foreach ($drive in $drives) { foreach ($drive in $drives) {
#if drive type is ISO then set DVD Drive accordingly #if drive type is ISO then set DVD Drive accordingly
$driveType = $drive.type."#text" $driveType = $drive.type."#text"
$addDriveParam = @{ $addDriveParam = @{
ControllerNumber = $rx.Match($controller.node.name).value ControllerNumber = $rx.Match($controller.node.name).value
Path = $vhdx_path Path = $vhdx_path
} }
if ($drive.pool_id."#text") { if ($drive.pool_id."#text") {
$ResourcePoolName = $drive.pool_id."#text" $ResourcePoolName = $drive.pool_id."#text"
$addDriveParam.Add("ResourcePoolname",$ResourcePoolName) $addDriveParam.Add("ResourcePoolname",$ResourcePoolName)
} }
if ($drivetype -eq 'VHD') { if ($drivetype -eq 'VHD') {
$addDriveParam.add("ControllerType",$ControllerType) $addDriveParam.add("ControllerType",$ControllerType)
$vm | Add-VMHardDiskDrive @AddDriveparam $vm | Add-VMHardDiskDrive @AddDriveparam
} }
} }
} }
@ -132,7 +133,8 @@ foreach ($controller in $controllers) {
$vm_id = (Get-VM $vm_name).id.guid $vm_id = (Get-VM $vm_name).id.guid
$resultHash = @{ $resultHash = @{
name = $vm_name name = $vm_name
id = $vm_id id = $vm_id
} }
$result = ConvertTo-Json $resultHash $result = ConvertTo-Json $resultHash
Write-Output-Message $result Write-Output-Message $result