This commit is contained in:
me 2015-03-23 09:17:41 +04:00
commit 60fea3f926
7 changed files with 53 additions and 80 deletions

View file

@ -23,7 +23,7 @@ namespace WebsitePanel.Providers.Virtualization
cmd.Parameters.Add("VMName", name);
Collection<PSObject> result = powerShell.Execute(cmd, false);
Collection<PSObject> result = powerShell.Execute(cmd, true);
if (result != null && result.Count > 0)
{
info.NumLockEnabled = true;
@ -56,7 +56,7 @@ namespace WebsitePanel.Providers.Virtualization
cmd.Parameters.Add("VMName", name);
Collection<PSObject> result = powerShell.Execute(cmd, false);
Collection<PSObject> result = powerShell.Execute(cmd, true);
if (result != null && result.Count > 0)
{
info.NumLockEnabled = Convert.ToBoolean(result[0].GetProperty("NumLockEnabled"));
@ -89,7 +89,7 @@ namespace WebsitePanel.Providers.Virtualization
else
cmd.Parameters.Add("FirstBootDevice", HardDriveHelper.GetPS(powerShell, vm.Name).FirstOrDefault());
powerShell.Execute(cmd, false);
powerShell.Execute(cmd, true);
}
// for others win and linux
else
@ -102,7 +102,7 @@ namespace WebsitePanel.Providers.Virtualization
: new[] { "IDE", "CD", "LegacyNetworkAdapter", "Floppy" };
cmd.Parameters.Add("StartupOrder", bootOrder);
powerShell.Execute(cmd, false);
powerShell.Execute(cmd, true);
}
}
}

View file

@ -36,7 +36,7 @@ namespace WebsitePanel.Providers.Virtualization
cmd.Parameters.Add("VMName", vmName);
Collection<PSObject> result = powerShell.Execute(cmd, false);
Collection<PSObject> result = powerShell.Execute(cmd, true);
if (result != null && result.Count > 0)
{
@ -57,7 +57,7 @@ namespace WebsitePanel.Providers.Virtualization
cmd.Parameters.Add("ControllerNumber", dvd.ControllerNumber);
cmd.Parameters.Add("ControllerLocation", dvd.ControllerLocation);
powerShell.Execute(cmd, false);
powerShell.Execute(cmd, true);
}
public static void Update(PowerShellManager powerShell, VirtualMachine vm, bool dvdDriveShouldBeInstalled)
@ -74,7 +74,7 @@ namespace WebsitePanel.Providers.Virtualization
cmd.Parameters.Add("VMName", vmName);
powerShell.Execute(cmd, false);
powerShell.Execute(cmd, true);
}
public static void Remove(PowerShellManager powerShell, string vmName)
@ -87,7 +87,7 @@ namespace WebsitePanel.Providers.Virtualization
cmd.Parameters.Add("ControllerNumber", dvd.ControllerNumber);
cmd.Parameters.Add("ControllerLocation", dvd.ControllerLocation);
powerShell.Execute(cmd, false);
powerShell.Execute(cmd, true);
}
}
}

View file

@ -47,7 +47,7 @@ namespace WebsitePanel.Providers.Virtualization
// Command cmd = new Command("Get-VM");
// Collection<PSObject> result = powerShell.Execute(cmd, false);
// Collection<PSObject> result = powerShell.Execute(cmd, true);
// if (result == null || result.Count == 0)
// return null;
@ -63,7 +63,7 @@ namespace WebsitePanel.Providers.Virtualization
Command cmd = new Command("Get-VMHardDiskDrive");
cmd.Parameters.Add("VMName", vmname);
return powerShell.Execute(cmd, false);
return powerShell.Execute(cmd, true);
}
public static void GetVirtualHardDiskDetail(PowerShellManager powerShell, string path, ref VirtualHardDiskInfo disk)
@ -72,7 +72,7 @@ namespace WebsitePanel.Providers.Virtualization
{
Command cmd = new Command("Get-VHD");
cmd.Parameters.Add("Path", path);
Collection<PSObject> result = powerShell.Execute(cmd, false);
Collection<PSObject> result = powerShell.Execute(cmd, true);
if (result != null && result.Count > 0)
{
disk.DiskFormat = result[0].GetEnum<VirtualHardDiskFormat>("VhdFormat");

View file

@ -10,15 +10,7 @@ using System.Threading.Tasks;
namespace WebsitePanel.Providers.Virtualization
{
public static class NetworkAdapterHelper
{
#region Constants
private const string EXTERNAL_NETWORK_ADAPTER_NAME = "External Network Adapter";
private const string PRIVATE_NETWORK_ADAPTER_NAME = "Private Network Adapter";
private const string MANAGEMENT_NETWORK_ADAPTER_NAME = "Management Network Adapter";
#endregion
{
public static VirtualMachineNetworkAdapter[] Get(PowerShellManager powerShell, string vmName)
{
List<VirtualMachineNetworkAdapter> adapters = new List<VirtualMachineNetworkAdapter>();
@ -26,7 +18,7 @@ namespace WebsitePanel.Providers.Virtualization
Command cmd = new Command("Get-VMNetworkAdapter");
if (!string.IsNullOrEmpty(vmName)) cmd.Parameters.Add("VMName", vmName);
Collection<PSObject> result = powerShell.Execute(cmd, false);
Collection<PSObject> result = powerShell.Execute(cmd, true);
if (result != null && result.Count > 0)
{
foreach (PSObject psAdapter in result)
@ -60,7 +52,7 @@ namespace WebsitePanel.Providers.Virtualization
else if (vm.ExternalNetworkEnabled && !String.IsNullOrEmpty(vm.ExternalNicMacAddress)
&& Get(powerShell,vm.Name,vm.ExternalNicMacAddress) == null)
{
Add(powerShell, vm.Name, vm.ExternalSwitchId, vm.ExternalNicMacAddress, EXTERNAL_NETWORK_ADAPTER_NAME, vm.LegacyNetworkAdapter);
Add(powerShell, vm.Name, vm.ExternalSwitchId, vm.ExternalNicMacAddress, Constants.EXTERNAL_NETWORK_ADAPTER_NAME, vm.LegacyNetworkAdapter);
}
// Private NIC
@ -72,7 +64,7 @@ namespace WebsitePanel.Providers.Virtualization
else if (vm.PrivateNetworkEnabled && !String.IsNullOrEmpty(vm.PrivateNicMacAddress)
&& Get(powerShell, vm.Name, vm.PrivateNicMacAddress) == null)
{
Add(powerShell, vm.Name, vm.PrivateSwitchId, vm.PrivateNicMacAddress, PRIVATE_NETWORK_ADAPTER_NAME, vm.LegacyNetworkAdapter);
Add(powerShell, vm.Name, vm.PrivateSwitchId, vm.PrivateNicMacAddress, Constants.PRIVATE_NETWORK_ADAPTER_NAME, vm.LegacyNetworkAdapter);
}
}
@ -89,8 +81,9 @@ namespace WebsitePanel.Providers.Virtualization
else
cmd.Parameters.Add("StaticMacAddress", macAddress);
powerShell.Execute(cmd, false);
powerShell.Execute(cmd, true);
}
public static void Delete(PowerShellManager powerShell, string vmName, string macAddress)
{
var networkAdapter = Get(powerShell, vmName, macAddress);
@ -98,12 +91,17 @@ namespace WebsitePanel.Providers.Virtualization
if (networkAdapter == null)
return;
Delete(powerShell, vmName, networkAdapter);
}
public static void Delete(PowerShellManager powerShell, string vmName, VirtualMachineNetworkAdapter networkAdapter)
{
Command cmd = new Command("Remove-VMNetworkAdapter");
cmd.Parameters.Add("VMName", vmName);
cmd.Parameters.Add("Name", networkAdapter.Name);
powerShell.Execute(cmd, false);
powerShell.Execute(cmd, true);
}
}
}

View file

@ -66,7 +66,7 @@ namespace WebsitePanel.Providers.Virtualization
cmd.Parameters.Add("Name", snapshot.Name);
if (includeChilds) cmd.Parameters.Add("IncludeAllChildSnapshots", true);
powerShell.Execute(cmd, false);
powerShell.Execute(cmd, true);
}
}
}