public VirtualMachine(AzureContext azureContext, Arm.VirtualMachine virtualMachine, List <VirtualNetwork> targetVirtualNetworks, List <StorageAccount> targetStorageAccounts, List <NetworkSecurityGroup> networkSecurityGroups) { this._AzureContext = azureContext; this.Source = virtualMachine; this.TargetName = virtualMachine.Name; this._TargetSize = virtualMachine.VmSize; this.OSVirtualHardDiskOS = virtualMachine.OSVirtualHardDiskOS; this.OSVirtualHardDisk = new Disk(virtualMachine.OSVirtualHardDisk); if (virtualMachine.OSVirtualHardDisk.GetType() == typeof(Arm.Disk)) { Arm.Disk armDisk = (Arm.Disk)virtualMachine.OSVirtualHardDisk; this.OSVirtualHardDisk.TargetStorageAccount = SeekTargetStorageAccount(targetStorageAccounts, armDisk.StorageAccountName); } foreach (IArmDisk dataDisk in virtualMachine.DataDisks) { Disk targetDataDisk = new Disk(dataDisk); this.DataDisks.Add(targetDataDisk); if (dataDisk.GetType() == typeof(Arm.Disk)) { Arm.Disk armDisk = (Arm.Disk)dataDisk; targetDataDisk.TargetStorageAccount = SeekTargetStorageAccount(targetStorageAccounts, armDisk.StorageAccountName); } } foreach (Arm.NetworkInterface armNetworkInterface in virtualMachine.NetworkInterfaces) { Azure.MigrationTarget.NetworkInterface migrationNetworkInterface = new Azure.MigrationTarget.NetworkInterface(_AzureContext, armNetworkInterface, targetVirtualNetworks, networkSecurityGroups); this.NetworkInterfaces.Add(migrationNetworkInterface); } }
public VirtualMachine(AzureContext azureContext, Arm.VirtualMachine virtualMachine, List <VirtualNetwork> targetVirtualNetworks, List <StorageAccount> targetStorageAccounts, List <NetworkSecurityGroup> networkSecurityGroups) { this._AzureContext = azureContext; this.Source = virtualMachine; this.TargetName = virtualMachine.Name; this.TargetSize = virtualMachine.VmSize; this.OSVirtualHardDiskOS = virtualMachine.OSVirtualHardDiskOS; this.OSVirtualHardDisk = new Disk(virtualMachine.OSVirtualHardDisk); if (virtualMachine.OSVirtualHardDisk.GetType() == typeof(Arm.Disk)) { Arm.Disk armDisk = (Arm.Disk)virtualMachine.OSVirtualHardDisk; this.OSVirtualHardDisk.TargetStorageAccount = SeekTargetStorageAccount(targetStorageAccounts, armDisk.StorageAccountName); } foreach (IArmDisk dataDisk in virtualMachine.DataDisks) { Disk targetDataDisk = new Disk(dataDisk); this.DataDisks.Add(targetDataDisk); if (dataDisk.GetType() == typeof(Arm.Disk)) { Arm.Disk armDisk = (Arm.Disk)dataDisk; targetDataDisk.TargetStorageAccount = SeekTargetStorageAccount(targetStorageAccounts, armDisk.StorageAccountName); } } foreach (Arm.NetworkInterface armNetworkInterface in virtualMachine.NetworkInterfaces) { Azure.MigrationTarget.NetworkInterface migrationNetworkInterface = new Azure.MigrationTarget.NetworkInterface(_AzureContext, armNetworkInterface, targetVirtualNetworks, networkSecurityGroups); this.NetworkInterfaces.Add(migrationNetworkInterface); } if (virtualMachine.HasPlan) { _PlanAttributes = new Dictionary <string, string>(); foreach (JProperty planAttribute in virtualMachine.ResourceToken["plan"]) { _PlanAttributes.Add(planAttribute.Name, planAttribute.Value.ToString()); } } }