コード例 #1
0
ファイル: Disk.cs プロジェクト: flyingoverclouds/migAz
        public Disk(IArmDisk sourceDisk, VirtualMachine parentVirtualMachine)
        {
            this.SourceDisk            = (IDisk)sourceDisk;
            this._ParentVirtualMachine = parentVirtualMachine;
            this.TargetStorage         = new ManagedDiskStorage(sourceDisk);

            if (sourceDisk.GetType() == typeof(Azure.Arm.ClassicDisk))
            {
                Azure.Arm.ClassicDisk armDisk = (Azure.Arm.ClassicDisk)sourceDisk;

                this.TargetName               = armDisk.Name;
                this.Lun                      = armDisk.Lun;
                this.HostCaching              = armDisk.Caching;
                this.DiskSizeInGB             = armDisk.DiskSizeGb;
                this.TargetStorageAccountBlob = armDisk.StorageAccountBlob;
                this.SourceStorageAccount     = armDisk.SourceStorageAccount;
            }
            else if (sourceDisk.GetType() == typeof(Azure.Arm.ManagedDisk))
            {
                Azure.Arm.ManagedDisk armManagedDisk = (Azure.Arm.ManagedDisk)sourceDisk;

                this.TargetName   = armManagedDisk.Name;
                this.DiskSizeInGB = armManagedDisk.DiskSizeGb;
            }
        }
コード例 #2
0
ファイル: VirtualMachine.cs プロジェクト: JF6/migAz
        public VirtualMachine(AzureContext azureContext, JToken resourceToken) : base(resourceToken)
        {
            _AzureContext = azureContext;

            if (ResourceToken["properties"]["storageProfile"]["osDisk"]["vhd"] == null)
            {
                _OSVirtualHardDisk = new ManagedDisk(_AzureContext, this, ResourceToken["properties"]["storageProfile"]["osDisk"]);
            }
            else
            {
                _OSVirtualHardDisk = new ClassicDisk(this, ResourceToken["properties"]["storageProfile"]["osDisk"]);
            }

            foreach (JToken dataDiskToken in ResourceToken["properties"]["storageProfile"]["dataDisks"])
            {
                if (dataDiskToken["vhd"] == null)
                {
                    _DataDisks.Add(new ManagedDisk(_AzureContext, this, dataDiskToken));
                }
                else
                {
                    _DataDisks.Add(new ClassicDisk(this, dataDiskToken));
                }
            }
        }
コード例 #3
0
ファイル: Disk.cs プロジェクト: brootware/migAz
        public Disk(IArmDisk sourceDisk, VirtualMachine parentVirtualMachine, TargetSettings targetSettings) : base(ArmConst.MicrosoftCompute, ArmConst.Disks)
        {
            this.SourceDisk            = (IDisk)sourceDisk;
            this._ParentVirtualMachine = parentVirtualMachine;
            this.TargetStorage         = new ManagedDiskStorage(sourceDisk);

            if (sourceDisk != null)
            {
                if (sourceDisk.GetType() == typeof(Azure.Arm.ClassicDisk))
                {
                    Azure.Arm.ClassicDisk armDisk = (Azure.Arm.ClassicDisk)sourceDisk;

                    this.SetTargetName(armDisk.Name, targetSettings);
                    this.Lun                      = armDisk.Lun;
                    this.HostCaching              = armDisk.Caching;
                    this.DiskSizeInGB             = armDisk.DiskSizeGb;
                    this.TargetStorageAccountBlob = armDisk.StorageAccountBlob;
                    this.SourceStorageAccount     = armDisk.SourceStorageAccount;
                }
                else if (sourceDisk.GetType() == typeof(Azure.Arm.ManagedDisk))
                {
                    Azure.Arm.ManagedDisk armManagedDisk = (Azure.Arm.ManagedDisk)sourceDisk;

                    this.SetTargetName(armManagedDisk.Name, targetSettings);
                    this.DiskSizeInGB = armManagedDisk.DiskSizeGb;
                }
            }
        }
コード例 #4
0
 public VirtualMachine(JToken resourceToken) : base(resourceToken)
 {
     _OSVirtualHardDisk = new Disk(ResourceToken["properties"]["storageProfile"]["osDisk"]);
     foreach (JToken dataDiskToken in ResourceToken["properties"]["storageProfile"]["dataDisks"])
     {
         _DataDisks.Add(new Disk(dataDiskToken));
     }
 }
コード例 #5
0
        public Disk(IArmDisk sourceDisk)
        {
            this.SourceDisk = (IDisk)sourceDisk;

            if (sourceDisk.GetType() == typeof(Azure.Arm.Disk))
            {
                Azure.Arm.Disk armDisk = (Azure.Arm.Disk)sourceDisk;

                this.TargetName               = armDisk.Name;
                this.Lun                      = armDisk.Lun;
                this.HostCaching              = armDisk.Caching;
                this.DiskSizeInGB             = armDisk.DiskSizeGb;
                this.TargetStorageAccountBlob = armDisk.StorageAccountBlob;
                this.SourceStorageAccount     = armDisk.SourceStorageAccount;
            }
            else if (sourceDisk.GetType() == typeof(Azure.Arm.ManagedDisk))
            {
                Azure.Arm.ManagedDisk armManagedDisk = (Azure.Arm.ManagedDisk)sourceDisk;
            }
        }
コード例 #6
0
        public Disk(IArmDisk sourceDisk, VirtualMachine parentVirtualMachine, TargetSettings targetSettings, ILogProvider logProvider) : base(ArmConst.MicrosoftCompute, ArmConst.Disks, logProvider)
        {
            this.SourceDisk            = (IDisk)sourceDisk;
            this._ParentVirtualMachine = parentVirtualMachine;
            this.TargetStorage         = new ManagedDiskStorage(sourceDisk);

            if (sourceDisk != null)
            {
                if (sourceDisk.GetType() == typeof(Azure.Arm.ClassicDisk))
                {
                    Azure.Arm.ClassicDisk armDisk = (Azure.Arm.ClassicDisk)sourceDisk;

                    this.SetTargetName(armDisk.Name, targetSettings);
                    this.Lun                            = armDisk.Lun;
                    this.HostCaching                    = armDisk.Caching;
                    this.DiskSizeInGB                   = armDisk.DiskSizeGb;
                    this.TargetStorageAccountBlob       = armDisk.StorageAccountBlob;
                    this.SourceStorageAccount           = armDisk.SourceStorageAccount;
                    this.IsEncrypted                    = armDisk.IsEncrypted;
                    this.DiskEncryptionKeySourceVaultId = armDisk.DiskEncryptionKeySourceVaultId;
                    this.DiskEncryptionKeySecretUrl     = armDisk.DiskEncryptionKeySecretUrl;
                    this.KeyEncryptionKeySourceVaultId  = armDisk.KeyEncryptionKeySourceVaultId;
                    this.KeyEncryptionKeyKeyUrl         = armDisk.KeyEncryptionKeyKeyUrl;
                }
                else if (sourceDisk.GetType() == typeof(Azure.Arm.ManagedDisk))
                {
                    Azure.Arm.ManagedDisk armManagedDisk = (Azure.Arm.ManagedDisk)sourceDisk;

                    this.SetTargetName(armManagedDisk.Name, targetSettings);
                    this.DiskSizeInGB = armManagedDisk.DiskSizeGb;
                    this.IsEncrypted  = armManagedDisk.IsEncrypted;
                    this.DiskEncryptionKeySourceVaultId = armManagedDisk.DiskEncryptionKeySourceVaultId;
                    this.DiskEncryptionKeySecretUrl     = armManagedDisk.DiskEncryptionKeySecretUrl;
                    this.KeyEncryptionKeySourceVaultId  = armManagedDisk.KeyEncryptionKeySourceVaultId;
                    this.KeyEncryptionKeyKeyUrl         = armManagedDisk.KeyEncryptionKeyKeyUrl;
                }
            }
        }
コード例 #7
0
        public VirtualMachine(AzureSubscription azureSubscription, JToken resourceToken) : base(azureSubscription, resourceToken)
        {
            this.AzureSubscription.LogProvider.WriteLog("Arm.VirutalMachine Ctor", "Constructing OS Disk");

            if (ResourceToken["properties"]["storageProfile"]["osDisk"]["vhd"] == null)
            {
                // Find and Link to Managed Disk
                if (ResourceToken["properties"]["storageProfile"]["osDisk"]["managedDisk"] == null)
                {
                    if (ResourceToken["properties"]["storageProfile"]["osDisk"]["name"] != null)
                    {
                        string managedDiskName = ResourceToken["properties"]["storageProfile"]["osDisk"]["name"].ToString();
                        this.AzureSubscription.LogProvider.WriteLog("Arm.VirutalMachine Ctor", "Seeking Managed Disk By Name '" + managedDiskName + "'.  Managed Disk object not available for By Id seek.");

                        ManagedDisk osDisk = azureSubscription.SeekManagedDiskByName(managedDiskName);
                        if (osDisk != null)
                        {
                            osDisk.SetParentVirtualMachine(this, ResourceToken["properties"]["storageProfile"]["osDisk"]);
                            _OSVirtualHardDisk = osDisk;
                        }
                        else
                        {
                        }
                    }
                    else
                    {
                    }
                }
                else
                {
                    if (ResourceToken["properties"]["storageProfile"]["osDisk"]["managedDisk"]["id"] != null)
                    {
                        string managedDiskId = ResourceToken["properties"]["storageProfile"]["osDisk"]["managedDisk"]["id"].ToString();
                        this.AzureSubscription.LogProvider.WriteLog("Arm.VirutalMachine Ctor", "Seeking Managed Disk By Id '" + managedDiskId + "'.");

                        ManagedDisk osDisk = azureSubscription.SeekManagedDiskById(managedDiskId);
                        if (osDisk != null)
                        {
                            osDisk.SetParentVirtualMachine(this, ResourceToken["properties"]["storageProfile"]["osDisk"]);
                            _OSVirtualHardDisk = osDisk;
                        }
                        else
                        {
                        }
                    }
                    else
                    {
                    }
                }
            }
            else
            {
                _OSVirtualHardDisk = new ClassicDisk(this, ResourceToken["properties"]["storageProfile"]["osDisk"]);
            }

            foreach (JToken dataDiskToken in ResourceToken["properties"]["storageProfile"]["dataDisks"])
            {
                this.AzureSubscription.LogProvider.WriteLog("Arm.VirutalMachine Ctor", "Constructing Data Disk");

                if (dataDiskToken["vhd"] == null)
                {
                    // Find and Link to Managed Disk
                    if (dataDiskToken["managedDisk"] == null)
                    {
                        if (dataDiskToken["name"] != null)
                        {
                            string managedDiskName = dataDiskToken["name"].ToString();
                            this.AzureSubscription.LogProvider.WriteLog("Arm.VirutalMachine Ctor", "Seeking Managed Disk By Name '" + managedDiskName + "'.  Managed Disk object not available for By Id seek.");

                            ManagedDisk dataDisk = azureSubscription.SeekManagedDiskByName(managedDiskName);
                            if (dataDisk != null)
                            {
                                dataDisk.SetParentVirtualMachine(this, dataDiskToken);
                                _DataDisks.Add(dataDisk);
                            }
                            else
                            {
                            }
                        }
                        else
                        {
                        }
                    }
                    else
                    {
                        if (dataDiskToken["managedDisk"]["id"] != null)
                        {
                            string managedDiskId = dataDiskToken["managedDisk"]["id"].ToString();
                            this.AzureSubscription.LogProvider.WriteLog("Arm.VirutalMachine Ctor", "Seeking Managed Disk By Id '" + managedDiskId + "'.");

                            ManagedDisk dataDisk = azureSubscription.SeekManagedDiskById(managedDiskId);
                            if (dataDisk != null)
                            {
                                dataDisk.SetParentVirtualMachine(this, dataDiskToken);
                                _DataDisks.Add(dataDisk);
                            }
                            else
                            {
                            }
                        }
                    }
                }
                else
                {
                    _DataDisks.Add(new ClassicDisk(this, dataDiskToken));
                }
            }
        }