示例#1
0
        internal void Bind(AsmToArm asmToArmForm, Azure.Asm.Disk asmDisk)
        {
            _AsmToArmForm = asmToArmForm;
            _AsmDataDisk  = asmDisk;

            BindCommon();
        }
示例#2
0
        internal void Bind(AsmToArm asmToArmForm, TreeNode armDataDiskNode)
        {
            _AsmToArmForm    = asmToArmForm;
            _ARMDataDiskNode = armDataDiskNode;
            _AsmDataDisk     = (Azure.Asm.Disk)_ARMDataDiskNode.Tag;

            BindCommon();
        }
        public async Task Bind(TreeNode armVirtualMachineNode, AsmToArm asmToArmForm)
        {
            _VirtualMachineNode = armVirtualMachineNode;
            _AsmToArmForm       = asmToArmForm;

            TreeNode asmTreeNode = (TreeNode)_VirtualMachineNode.Tag;

            if (asmTreeNode.Tag.GetType() == typeof(Azure.Asm.VirtualMachine))
            {
                Azure.Asm.VirtualMachine asmVirtualMachine = (Azure.Asm.VirtualMachine)asmTreeNode.Tag;

                lblRoleSize.Text           = asmVirtualMachine.RoleSize;
                lblOS.Text                 = asmVirtualMachine.OSVirtualHardDiskOS;
                lblVirtualNetworkName.Text = asmVirtualMachine.VirtualNetworkName;
                lblSubnetName.Text         = asmVirtualMachine.SubnetName;
                lblStaticIpAddress.Text    = asmVirtualMachine.StaticVirtualNetworkIPAddress;
                txtARMVMName.Text          = asmVirtualMachine.TargetName;

                this.diskProperties1.Bind(asmToArmForm, asmVirtualMachine.OSVirtualHardDisk);

                try
                {
                    List <Azure.Arm.VirtualNetwork> a = await _AsmToArmForm.AzureContextTargetARM.AzureRetriever.GetAzureARMVirtualNetworks();

                    rbExistingARMVNet.Enabled = a.Count() > 0;
                }
                catch (Exception exc)
                {
                    _AsmToArmForm.LogProvider.WriteLog("VirtualMachineProperties.Bind", exc.Message);
                    rbExistingARMVNet.Enabled = false;
                }

                if ((asmVirtualMachine.TargetSubnet == null) ||
                    (asmVirtualMachine.TargetSubnet.GetType() == typeof(Azure.Asm.Subnet)) ||
                    (rbExistingARMVNet.Enabled == false))
                {
                    rbVNetInMigration.Checked = true;
                }
                else
                {
                    rbExistingARMVNet.Checked = true;
                }
            }
            else if (asmTreeNode.Tag.GetType() == typeof(Azure.Arm.VirtualMachine))
            {
                Azure.Arm.VirtualMachine armVirtualMachine = (Azure.Arm.VirtualMachine)asmTreeNode.Tag;

                lblRoleSize.Text = armVirtualMachine.VmSize;
                //lblOS.Text = armVirtualMachine.OSVirtualHardDiskOS;
                if (armVirtualMachine.VirtualNetwork != null)
                {
                    lblVirtualNetworkName.Text = armVirtualMachine.VirtualNetwork.Name;
                }
                //lblSubnetName.Text = armVirtualMachine.SubnetName;
                //lblStaticIpAddress.Text = armVirtualMachine.StaticVirtualNetworkIPAddress;
                txtARMVMName.Text = armVirtualMachine.TargetName;
            }
        }
        internal void Bind(TreeNode networkSecurityGroupNode, AsmToArm asmToArmForm)
        {
            _NetworkSecurityGroupNode = networkSecurityGroupNode;

            TreeNode             asmNetworkSecurityGroupNode = (TreeNode)_NetworkSecurityGroupNode.Tag;
            NetworkSecurityGroup asmNetworkSecurityGroup     = (NetworkSecurityGroup)asmNetworkSecurityGroupNode.Tag;

            lblSourceName.Text = asmNetworkSecurityGroup.Name;
            txtTargetName.Text = asmNetworkSecurityGroup.TargetName;
        }
示例#5
0
        private void aSMToARMToolStripMenuItem_Click(object sender, EventArgs e)
        {
            SplitterPanel parent = (SplitterPanel)splitContainer2.Panel1;

            AsmToArm asmToArm = new AsmToArm(StatusProvider, LogProvider, propertyPanel1);

            asmToArm.AzureContextSourceASM.AzureRetriever.OnRestResult  += AzureRetriever_OnRestResult;
            asmToArm.AzureContextSourceASM.AfterAzureSubscriptionChange += AzureContextSourceASM_AfterAzureSubscriptionChange;
            asmToArm.TemplateGenerator.AfterTemplateChanged             += TemplateGenerator_AfterTemplateChanged;
            parent.Controls.Add(asmToArm);

            newMigrationToolStripMenuItem.Enabled   = false;
            closeMigrationToolStripMenuItem.Enabled = true;

            this.Refresh();
            Application.DoEvents();
            asmToArm.ChangeAzureContext();
        }
示例#6
0
        internal async Task Bind(AsmToArm parentForm, TreeNode resourceGroupNode)
        {
            _ParentForm        = parentForm;
            _ResourceGroupNode = resourceGroupNode;

            ResourceGroup armResourceGroup = (ResourceGroup)_ResourceGroupNode.Tag;

            txtName.Text = armResourceGroup.Name;

            try
            {
                cboTargetLocation.Items.Clear();
                foreach (Azure.Arm.Location armLocation in await _ParentForm.AzureContextTargetARM.AzureRetriever.GetAzureARMLocations())
                {
                    cboTargetLocation.Items.Add(armLocation);
                }
            }
            catch (WebException)
            {
                // We are trying to load the ARM defined subscription locations above first; however, this as of Feb 24 2017, this ARM query
                // does not succeed (503 Forbidden) across all Azure Environments.  For example, it works in Azure Commercial, but Azure US Gov
                // is not yet update to support this call.  In the event the ARM location query fails, we will default to using ASM Location query.

                cboTargetLocation.Items.Clear();
                foreach (Azure.Asm.Location asmLocation in await _ParentForm.AzureContextTargetARM.AzureRetriever.GetAzureASMLocations())
                {
                    cboTargetLocation.Items.Add(asmLocation);
                }
            }

            if (armResourceGroup.Location != null)
            {
                foreach (Azure.Arm.Location armLocation in cboTargetLocation.Items)
                {
                    if (armLocation.Name == armResourceGroup.Location.Name)
                    {
                        cboTargetLocation.SelectedItem = armLocation;
                    }
                }
            }
        }
示例#7
0
        private void aRMToARMToolStripMenuItem1_Click(object sender, EventArgs e)
        {
            SplitterPanel parent = (SplitterPanel)splitContainer2.Panel1;

            AsmToArm asmToArm = new AsmToArm(StatusProvider, LogProvider, propertyPanel1);

            asmToArm.AzureContextSourceASM.AzureRetriever.DefaultTargetDiskType = app.Default.DefaultTargetDiskType;
            asmToArm.AzureContextSourceASM.AzureRetriever.OnRestResult         += AzureRetriever_OnRestResult;
            asmToArm.AzureContextSourceASM.AfterAzureSubscriptionChange        += AzureContextSourceASM_AfterAzureSubscriptionChange;
            asmToArm.AzureResourceImageList = this.imageList1;
            asmToArm.TemplateGenerator.AfterTemplateChanged += TemplateGenerator_AfterTemplateChanged;
            parent.Controls.Add(asmToArm);

            newMigrationToolStripMenuItem.Enabled   = false;
            closeMigrationToolStripMenuItem.Enabled = true;

            asmToArm.RemoveAsmTab();
            splitContainer2_Panel1_Resize(this, null);

            this.Refresh();
            Application.DoEvents();
            asmToArm.ChangeAzureContext();
        }