def _refreshInfo(self, iou_device): self.uiIOUDeviceInfoTreeWidget.clear() # fill out the General section section_item = self._createSectionItem("General") QtWidgets.QTreeWidgetItem(section_item, ["Template name:", iou_device["name"]]) QtWidgets.QTreeWidgetItem( section_item, ["Default name format:", iou_device["default_name_format"]]) QtWidgets.QTreeWidgetItem(section_item, ["Server:", iou_device["server"]]) QtWidgets.QTreeWidgetItem(section_item, ["Image:", iou_device["image"]]) if iou_device["startup_config"]: QtWidgets.QTreeWidgetItem( section_item, ["Startup-config:", iou_device["startup_config"]]) if iou_device["private_config"]: QtWidgets.QTreeWidgetItem( section_item, ["Private-config:", iou_device["private_config"]]) if iou_device["use_default_iou_values"]: QtWidgets.QTreeWidgetItem(section_item, ["RAM:", "default"]) QtWidgets.QTreeWidgetItem(section_item, ["NVRAM:", "default"]) else: QtWidgets.QTreeWidgetItem( section_item, ["RAM:", "{} MiB".format(iou_device["ram"])]) QtWidgets.QTreeWidgetItem( section_item, ["NVRAM:", "{} KiB".format(iou_device["nvram"])]) # fill out the Network section section_item = self._createSectionItem("Network") QtWidgets.QTreeWidgetItem(section_item, [ "Ethernet adapters:", "{} ({} interfaces)".format( iou_device["ethernet_adapters"], iou_device["ethernet_adapters"] * 4) ]) QtWidgets.QTreeWidgetItem(section_item, [ "Serial adapters:", "{} ({} interfaces)".format( iou_device["serial_adapters"], iou_device["serial_adapters"] * 4) ]) self.uiIOUDeviceInfoTreeWidget.expandAll() self.uiIOUDeviceInfoTreeWidget.resizeColumnToContents(0) self.uiIOUDeviceInfoTreeWidget.resizeColumnToContents(1)
def _refreshInfo(self, qemu_vm): self.uiQemuVMInfoTreeWidget.clear() # fill out the General section section_item = self._createSectionItem("General") QtWidgets.QTreeWidgetItem(section_item, ["Template name:", qemu_vm["name"]]) if qemu_vm["linked_base"]: QtWidgets.QTreeWidgetItem( section_item, ["Default name format:", qemu_vm["default_name_format"]]) QtWidgets.QTreeWidgetItem(section_item, ["Server:", qemu_vm["server"]]) QtWidgets.QTreeWidgetItem(section_item, ["Console type:", qemu_vm["console_type"]]) QtWidgets.QTreeWidgetItem(section_item, ["CPUs:", str(qemu_vm["cpus"])]) QtWidgets.QTreeWidgetItem(section_item, ["Memory:", "{} MB".format(qemu_vm["ram"])]) QtWidgets.QTreeWidgetItem( section_item, ["Linked base VM:", "{}".format(qemu_vm["linked_base"])]) if qemu_vm["qemu_path"]: QtWidgets.QTreeWidgetItem( section_item, ["QEMU binary:", os.path.basename(qemu_vm["qemu_path"])]) # fill out the Hard disks section if qemu_vm["hda_disk_image"] or qemu_vm["hdb_disk_image"] or qemu_vm[ "hdc_disk_image"] or qemu_vm["hdd_disk_image"]: section_item = self._createSectionItem("Hard disks") if qemu_vm["hda_disk_image"]: QtWidgets.QTreeWidgetItem( section_item, ["Disk image (hda):", qemu_vm["hda_disk_image"]]) QtWidgets.QTreeWidgetItem( section_item, ["Disk interface (hda):", qemu_vm["hda_disk_interface"]]) if qemu_vm["hdb_disk_image"]: QtWidgets.QTreeWidgetItem( section_item, ["Disk image (hdb):", qemu_vm["hdb_disk_image"]]) QtWidgets.QTreeWidgetItem( section_item, ["Disk interface (hdb):", qemu_vm["hdb_disk_interface"]]) if qemu_vm["hdc_disk_image"]: QtWidgets.QTreeWidgetItem( section_item, ["Disk image (hdc):", qemu_vm["hdc_disk_image"]]) QtWidgets.QTreeWidgetItem( section_item, ["Disk interface (hdc):", qemu_vm["hdc_disk_interface"]]) if qemu_vm["hdd_disk_image"]: QtWidgets.QTreeWidgetItem( section_item, ["Disk image (hdd):", qemu_vm["hdd_disk_image"]]) QtWidgets.QTreeWidgetItem( section_item, ["Disk interface (hdd):", qemu_vm["hdd_disk_interface"]]) if qemu_vm["cdrom_image"]: QtWidgets.QTreeWidgetItem( section_item, ["CD/DVD image:", qemu_vm["cdrom_image"]]) # fill out the Network section section_item = self._createSectionItem("Network") QtWidgets.QTreeWidgetItem( section_item, ["Adapters:", str(qemu_vm["adapters"])]) QtWidgets.QTreeWidgetItem( section_item, ["Name format:", qemu_vm["port_name_format"]]) if qemu_vm["port_segment_size"]: QtWidgets.QTreeWidgetItem( section_item, ["Segment size:", str(qemu_vm["port_segment_size"])]) if qemu_vm["first_port_name"]: QtWidgets.QTreeWidgetItem( section_item, ["First port name:", qemu_vm["first_port_name"]]) QtWidgets.QTreeWidgetItem(section_item, ["Type:", qemu_vm["adapter_type"]]) if qemu_vm["mac_address"]: QtWidgets.QTreeWidgetItem( section_item, ["Base MAC address:", qemu_vm["mac_address"]]) # fill out the Linux boot section if qemu_vm["initrd"] or qemu_vm["kernel_image"] or qemu_vm[ "kernel_command_line"]: section_item = self._createSectionItem("Linux boot") if qemu_vm["initrd"]: QtWidgets.QTreeWidgetItem( section_item, ["Initial RAM disk:", qemu_vm["initrd"]]) if qemu_vm["kernel_image"]: QtWidgets.QTreeWidgetItem( section_item, ["Kernel image:", qemu_vm["kernel_image"]]) if qemu_vm["kernel_command_line"]: QtWidgets.QTreeWidgetItem( section_item, ["Kernel command line:", qemu_vm["kernel_command_line"]]) # performance section section_item = self._createSectionItem("Optimizations") if qemu_vm["cpu_throttling"]: QtWidgets.QTreeWidgetItem( section_item, ["CPU throttling:", "{}%".format(qemu_vm["cpu_throttling"])]) else: QtWidgets.QTreeWidgetItem(section_item, ["CPU throttling:", "disabled"]) QtWidgets.QTreeWidgetItem( section_item, ["Process priority:", qemu_vm["process_priority"]]) # fill out the Additional options section section_item = self._createSectionItem("Additional options") if qemu_vm["options"]: QtWidgets.QTreeWidgetItem(section_item, ["Options:", qemu_vm["options"]]) QtWidgets.QTreeWidgetItem( section_item, ["ACPI shutdown:", "{}".format(qemu_vm["acpi_shutdown"])]) self.uiQemuVMInfoTreeWidget.expandAll() self.uiQemuVMInfoTreeWidget.resizeColumnToContents(0) self.uiQemuVMInfoTreeWidget.resizeColumnToContents(1)
def loadSettings(self, settings, node=None, group=False): """ Loads the cloud settings. :param settings: the settings (dictionary) :param node: Node instance :param group: indicates the settings apply to a group """ if not group: self.uiNameLineEdit.setText(settings["name"]) else: self.uiNameLineEdit.setEnabled(False) if not node: # these are template settings # rename the label from "Name" to "Template name" self.uiNameLabel.setText("Template name:") # load the default name format self.uiDefaultNameFormatLineEdit.setText(settings["default_name_format"]) # load the symbol self.uiSymbolLineEdit.setText(settings["symbol"]) self.uiSymbolLineEdit.setToolTip('<img src="{}"/>'.format(settings["symbol"])) # load the category index = self.uiCategoryComboBox.findData(settings["category"]) if index != -1: self.uiCategoryComboBox.setCurrentIndex(index) Controller.instance().getCompute("/network/interfaces", settings["server"], self._getInterfacesFromServerCallback, progressText="Retrieving network interfaces...") else: self.uiDefaultNameFormatLabel.hide() self.uiDefaultNameFormatLineEdit.hide() self.uiSymbolLabel.hide() self.uiSymbolLineEdit.hide() self.uiSymbolToolButton.hide() self.uiCategoryComboBox.hide() self.uiCategoryLabel.hide() self.uiCategoryComboBox.hide() self._node = node self._interfaces = self._node.interfaces() self._loadNetworkInterfaces(self._interfaces) # load the current ports self._ports = [] self.uiEthernetListWidget.clear() self.uiTAPListWidget.clear() self.uiUDPTreeWidget.clear() for port in settings["ports_mapping"]: self._ports.append(port) if port["type"] == "ethernet": self.uiEthernetListWidget.addItem(port["name"]) index = self.uiEthernetComboBox.findText(port["name"]) if index != -1: self.uiEthernetComboBox.removeItem(index) elif port["type"] == "tap": self.uiTAPListWidget.addItem(port["name"]) index = self.uiTAPComboBox.findText(port["name"]) if index != -1: self.uiTAPComboBox.removeItem(index) elif port["type"] == "udp": item = QtWidgets.QTreeWidgetItem(self.uiUDPTreeWidget) item.setText(0, port["name"]) item.setText(1, str(port["lport"])) item.setText(2, port["rhost"]) item.setText(3, str(port["rport"])) self.uiUDPTreeWidget.addTopLevelItem(item) self.uiUDPTreeWidget.resizeColumnToContents(0) self.uiUDPTreeWidget.resizeColumnToContents(1) self.uiUDPTreeWidget.resizeColumnToContents(2) self.uiUDPTreeWidget.resizeColumnToContents(3)
def _refreshInfo(self, vmware_vm): self.uiVMwareVMInfoTreeWidget.clear() # fill out the General section section_item = self._createSectionItem("General") QtWidgets.QTreeWidgetItem(section_item, ["VM name:", vmware_vm["name"]]) QtWidgets.QTreeWidgetItem(section_item, ["Server:", vmware_vm["server"]]) QtWidgets.QTreeWidgetItem(section_item, [ "Remote console enabled:", "{}".format( vmware_vm["enable_remote_console"]) ]) QtWidgets.QTreeWidgetItem( section_item, ["Headless mode enabled:", "{}".format(vmware_vm["headless"])]) QtWidgets.QTreeWidgetItem(section_item, [ "ACPI shutdown enabled:", "{}".format(vmware_vm["acpi_shutdown"]) ]) QtWidgets.QTreeWidgetItem( section_item, ["Linked base VM:", "{}".format(vmware_vm["linked_base"])]) # fill out the Network section section_item = self._createSectionItem("Network") QtWidgets.QTreeWidgetItem( section_item, ["Adapters:", str(vmware_vm["adapters"])]) QtWidgets.QTreeWidgetItem( section_item, ["Name format:", vmware_vm["port_name_format"]]) if vmware_vm["port_segment_size"]: QtWidgets.QTreeWidgetItem( section_item, ["Segment size:", str(vmware_vm["port_segment_size"])]) if vmware_vm["first_port_name"]: QtWidgets.QTreeWidgetItem( section_item, ["First port name:", vmware_vm["first_port_name"]]) QtWidgets.QTreeWidgetItem( section_item, ["Use uBridge:", "{}".format(vmware_vm["use_ubridge"])]) QtWidgets.QTreeWidgetItem( section_item, ["Use any adapter:", "{}".format(vmware_vm["use_any_adapter"])]) QtWidgets.QTreeWidgetItem(section_item, ["Type:", vmware_vm["adapter_type"]]) self.uiVMwareVMInfoTreeWidget.expandAll() self.uiVMwareVMInfoTreeWidget.resizeColumnToContents(0) self.uiVMwareVMInfoTreeWidget.resizeColumnToContents(1)
def _refreshInfo(self, iou_device): """ Refreshes the content of the tree widget. """ self.uiIOUDeviceInfoTreeWidget.clear() # fill out the General section section_item = self._createSectionItem("General") QtWidgets.QTreeWidgetItem(section_item, ["Template name:", iou_device["name"]]) QtWidgets.QTreeWidgetItem( section_item, ["Template ID:", iou_device.get("template_id", "none")]) QtWidgets.QTreeWidgetItem( section_item, ["Default name format:", iou_device["default_name_format"]]) try: QtWidgets.QTreeWidgetItem(section_item, [ "Server:", ComputeManager.instance().getCompute( iou_device["compute_id"]).name() ]) except KeyError: # Compute doesn't exists pass QtWidgets.QTreeWidgetItem( section_item, ["Console type:", iou_device["console_type"]]) QtWidgets.QTreeWidgetItem(section_item, [ "Auto start console:", "{}".format( iou_device["console_auto_start"]) ]) QtWidgets.QTreeWidgetItem(section_item, ["Image:", iou_device["path"]]) if iou_device["startup_config"]: QtWidgets.QTreeWidgetItem( section_item, ["Startup-config:", iou_device["startup_config"]]) if iou_device["private_config"]: QtWidgets.QTreeWidgetItem( section_item, ["Private-config:", iou_device["private_config"]]) if iou_device["use_default_iou_values"]: QtWidgets.QTreeWidgetItem(section_item, ["RAM:", "default"]) QtWidgets.QTreeWidgetItem(section_item, ["NVRAM:", "default"]) else: QtWidgets.QTreeWidgetItem( section_item, ["RAM:", "{} MiB".format(iou_device["ram"])]) QtWidgets.QTreeWidgetItem( section_item, ["NVRAM:", "{} KiB".format(iou_device["nvram"])]) # fill out the Network section section_item = self._createSectionItem("Network") QtWidgets.QTreeWidgetItem(section_item, [ "Ethernet adapters:", "{} ({} interfaces)".format( iou_device["ethernet_adapters"], iou_device["ethernet_adapters"] * 4) ]) QtWidgets.QTreeWidgetItem(section_item, [ "Serial adapters:", "{} ({} interfaces)".format( iou_device["serial_adapters"], iou_device["serial_adapters"] * 4) ]) self.uiIOUDeviceInfoTreeWidget.expandAll() self.uiIOUDeviceInfoTreeWidget.resizeColumnToContents(0) self.uiIOUDeviceInfoTreeWidget.resizeColumnToContents(1) self.uiIOUDevicesTreeWidget.setMaximumWidth( self.uiIOUDevicesTreeWidget.sizeHintForColumn(0) + 10)
def _refreshInfo(self, qemu_vm): """ Refreshes the content of the tree widget. """ self.uiQemuVMInfoTreeWidget.clear() # fill out the General section section_item = self._createSectionItem("General") QtWidgets.QTreeWidgetItem(section_item, ["Template name:", qemu_vm["name"]]) QtWidgets.QTreeWidgetItem( section_item, ["Template ID:", qemu_vm.get("template_id", "none")]) if qemu_vm["linked_clone"]: QtWidgets.QTreeWidgetItem( section_item, ["Default name format:", qemu_vm["default_name_format"]]) try: QtWidgets.QTreeWidgetItem(section_item, [ "Server:", ComputeManager.instance().getCompute( qemu_vm["compute_id"]).name() ]) except KeyError: pass QtWidgets.QTreeWidgetItem(section_item, ["Console type:", qemu_vm["console_type"]]) QtWidgets.QTreeWidgetItem(section_item, [ "Auto start console:", "{}".format(qemu_vm["console_auto_start"]) ]) QtWidgets.QTreeWidgetItem(section_item, ["CPUs:", str(qemu_vm["cpus"])]) QtWidgets.QTreeWidgetItem(section_item, ["Memory:", "{} MB".format(qemu_vm["ram"])]) QtWidgets.QTreeWidgetItem( section_item, ["Linked base VM:", "{}".format(qemu_vm["linked_clone"])]) if qemu_vm["qemu_path"]: QtWidgets.QTreeWidgetItem( section_item, ["QEMU binary:", os.path.basename(qemu_vm["qemu_path"])]) # fill out the Hard disks section if qemu_vm["hda_disk_image"] or qemu_vm["hdb_disk_image"] or qemu_vm[ "hdc_disk_image"] or qemu_vm["hdd_disk_image"]: section_item = self._createSectionItem("Hard disks") if qemu_vm["hda_disk_image"]: QtWidgets.QTreeWidgetItem( section_item, ["Disk image (hda):", qemu_vm["hda_disk_image"]]) QtWidgets.QTreeWidgetItem( section_item, ["Disk interface (hda):", qemu_vm["hda_disk_interface"]]) if qemu_vm["hdb_disk_image"]: QtWidgets.QTreeWidgetItem( section_item, ["Disk image (hdb):", qemu_vm["hdb_disk_image"]]) QtWidgets.QTreeWidgetItem( section_item, ["Disk interface (hdb):", qemu_vm["hdb_disk_interface"]]) if qemu_vm["hdc_disk_image"]: QtWidgets.QTreeWidgetItem( section_item, ["Disk image (hdc):", qemu_vm["hdc_disk_image"]]) QtWidgets.QTreeWidgetItem( section_item, ["Disk interface (hdc):", qemu_vm["hdc_disk_interface"]]) if qemu_vm["hdd_disk_image"]: QtWidgets.QTreeWidgetItem( section_item, ["Disk image (hdd):", qemu_vm["hdd_disk_image"]]) QtWidgets.QTreeWidgetItem( section_item, ["Disk interface (hdd):", qemu_vm["hdd_disk_interface"]]) if qemu_vm["cdrom_image"]: QtWidgets.QTreeWidgetItem( section_item, ["CD/DVD image:", qemu_vm["cdrom_image"]]) if qemu_vm["bios_image"]: QtWidgets.QTreeWidgetItem( section_item, ["Bios image:", qemu_vm["bios_image"]]) # fill out the Network section section_item = self._createSectionItem("Network") QtWidgets.QTreeWidgetItem( section_item, ["Adapters:", str(qemu_vm["adapters"])]) QtWidgets.QTreeWidgetItem( section_item, ["Name format:", qemu_vm["port_name_format"]]) if qemu_vm["port_segment_size"]: QtWidgets.QTreeWidgetItem( section_item, ["Segment size:", str(qemu_vm["port_segment_size"])]) if qemu_vm["first_port_name"]: QtWidgets.QTreeWidgetItem( section_item, ["First port name:", qemu_vm["first_port_name"]]) QtWidgets.QTreeWidgetItem(section_item, ["Type:", qemu_vm["adapter_type"]]) if qemu_vm["mac_address"]: QtWidgets.QTreeWidgetItem( section_item, ["Base MAC address:", qemu_vm["mac_address"]]) # fill out the Linux boot section if qemu_vm["initrd"] or qemu_vm["kernel_image"] or qemu_vm[ "kernel_command_line"]: section_item = self._createSectionItem("Linux boot") if qemu_vm["initrd"]: QtWidgets.QTreeWidgetItem( section_item, ["Initial RAM disk:", qemu_vm["initrd"]]) if qemu_vm["kernel_image"]: QtWidgets.QTreeWidgetItem( section_item, ["Kernel image:", qemu_vm["kernel_image"]]) if qemu_vm["kernel_command_line"]: QtWidgets.QTreeWidgetItem( section_item, ["Kernel command line:", qemu_vm["kernel_command_line"]]) # performance section section_item = self._createSectionItem("Optimizations") if qemu_vm["cpu_throttling"]: QtWidgets.QTreeWidgetItem( section_item, ["CPU throttling:", "{}%".format(qemu_vm["cpu_throttling"])]) else: QtWidgets.QTreeWidgetItem(section_item, ["CPU throttling:", "disabled"]) QtWidgets.QTreeWidgetItem( section_item, ["Process priority:", qemu_vm["process_priority"]]) # fill out the Additional options section section_item = self._createSectionItem("Additional options") if qemu_vm["options"]: QtWidgets.QTreeWidgetItem(section_item, ["Options:", qemu_vm["options"]]) QtWidgets.QTreeWidgetItem( section_item, ["On close:", "{}".format(qemu_vm["on_close"])]) self.uiQemuVMInfoTreeWidget.expandAll() self.uiQemuVMInfoTreeWidget.resizeColumnToContents(0) self.uiQemuVMInfoTreeWidget.resizeColumnToContents(1) self.uiQemuVMsTreeWidget.setMaximumWidth( self.uiQemuVMsTreeWidget.sizeHintForColumn(0) + 10)
def _refreshInfo(self, ios_router): self.uiIOSRouterInfoTreeWidget.clear() # fill out the General section section_item = self._createSectionItem("General") QtWidgets.QTreeWidgetItem(section_item, ["Template name:", ios_router["name"]]) QtWidgets.QTreeWidgetItem( section_item, ["Default name format:", ios_router["default_name_format"]]) QtWidgets.QTreeWidgetItem(section_item, ["Server:", ios_router["server"]]) QtWidgets.QTreeWidgetItem(section_item, ["Platform:", ios_router["platform"]]) if ios_router["chassis"]: QtWidgets.QTreeWidgetItem(section_item, ["Chassis:", ios_router["chassis"]]) QtWidgets.QTreeWidgetItem(section_item, ["Image:", ios_router["image"]]) if ios_router["idlepc"]: QtWidgets.QTreeWidgetItem(section_item, ["Idle-PC:", ios_router["idlepc"]]) if ios_router["startup_config"]: QtWidgets.QTreeWidgetItem( section_item, ["Startup-config:", ios_router["startup_config"]]) if ios_router["private_config"]: QtWidgets.QTreeWidgetItem( section_item, ["Private-config:", ios_router["private_config"]]) if ios_router["platform"] == "c7200": QtWidgets.QTreeWidgetItem( section_item, ["Midplane:", ios_router.get("midplane", "vxr")]) QtWidgets.QTreeWidgetItem( section_item, ["NPE:", ios_router.get("npe", "npe-400")]) # fill out the Memories and disk section section_item = self._createSectionItem("Memories and disks") QtWidgets.QTreeWidgetItem(section_item, ["RAM:", "{} MiB".format(ios_router["ram"])]) QtWidgets.QTreeWidgetItem( section_item, ["NVRAM:", "{} KiB".format(ios_router["nvram"])]) if "iomem" in ios_router and ios_router["iomem"]: QtWidgets.QTreeWidgetItem( section_item, ["I/O memory:", "{}%".format(ios_router["iomem"])]) QtWidgets.QTreeWidgetItem( section_item, ["PCMCIA disk0:", "{} MiB".format(ios_router["disk0"])]) QtWidgets.QTreeWidgetItem( section_item, ["PCMCIA disk1:", "{} MiB".format(ios_router["disk1"])]) QtWidgets.QTreeWidgetItem( section_item, ["Auto delete:", "{}".format(ios_router["auto_delete_disks"])]) # fill out the Adapters section section_item = self._createSectionItem("Adapters") for slot_id in range(0, 7): slot = "slot{}".format(slot_id) if slot in ios_router and ios_router[slot]: QtWidgets.QTreeWidgetItem( section_item, ["Slot {}:".format(slot_id), ios_router[slot]]) if section_item.childCount() == 0: self.uiIOSRouterInfoTreeWidget.takeTopLevelItem( self.uiIOSRouterInfoTreeWidget.indexOfTopLevelItem( section_item)) # fill out the WICs section section_item = self._createSectionItem("WICs") for wic_id in range(0, 3): wic = "wic{}".format(wic_id) if wic in ios_router and ios_router[wic]: QtWidgets.QTreeWidgetItem( section_item, ["WIC {}:".format(wic_id), ios_router[wic]]) if section_item.childCount() == 0: self.uiIOSRouterInfoTreeWidget.takeTopLevelItem( self.uiIOSRouterInfoTreeWidget.indexOfTopLevelItem( section_item)) self.uiIOSRouterInfoTreeWidget.expandAll() self.uiIOSRouterInfoTreeWidget.resizeColumnToContents(0) self.uiIOSRouterInfoTreeWidget.resizeColumnToContents(1)
def _refreshInfo(self, ios_router): """ Refreshes the content of the tree widget. """ self.uiIOSRouterInfoTreeWidget.clear() # fill out the General section section_item = self._createSectionItem("General") QtWidgets.QTreeWidgetItem(section_item, ["Template name:", ios_router["name"]]) QtWidgets.QTreeWidgetItem( section_item, ["Template ID:", ios_router.get("template_id", "none")]) QtWidgets.QTreeWidgetItem( section_item, ["Default name format:", ios_router["default_name_format"]]) try: QtWidgets.QTreeWidgetItem(section_item, [ "Server:", ComputeManager.instance().getCompute( ios_router["compute_id"]).name() ]) except KeyError: pass QtWidgets.QTreeWidgetItem(section_item, ["Platform:", ios_router["platform"]]) if ios_router.get("chassis"): QtWidgets.QTreeWidgetItem( section_item, ["Chassis:", ios_router.get("chassis")]) QtWidgets.QTreeWidgetItem(section_item, ["Image:", ios_router["image"]]) QtWidgets.QTreeWidgetItem( section_item, ["Console type:", ios_router["console_type"]]) QtWidgets.QTreeWidgetItem(section_item, [ "Auto start console:", "{}".format( ios_router["console_auto_start"]) ]) if ios_router["idlepc"]: QtWidgets.QTreeWidgetItem(section_item, ["Idle-PC:", ios_router["idlepc"]]) if ios_router["startup_config"]: QtWidgets.QTreeWidgetItem( section_item, ["Startup-config:", ios_router["startup_config"]]) if ios_router["private_config"]: QtWidgets.QTreeWidgetItem( section_item, ["Private-config:", ios_router["private_config"]]) if ios_router["platform"] == "c7200": QtWidgets.QTreeWidgetItem( section_item, ["Midplane:", ios_router.get("midplane", "vxr")]) QtWidgets.QTreeWidgetItem( section_item, ["NPE:", ios_router.get("npe", "npe-400")]) # fill out the Memories and disk section section_item = self._createSectionItem("Memories and disks") QtWidgets.QTreeWidgetItem(section_item, ["RAM:", "{} MiB".format(ios_router["ram"])]) QtWidgets.QTreeWidgetItem( section_item, ["NVRAM:", "{} KiB".format(ios_router["nvram"])]) if "iomem" in ios_router and ios_router["iomem"]: QtWidgets.QTreeWidgetItem( section_item, ["I/O memory:", "{}%".format(ios_router["iomem"])]) QtWidgets.QTreeWidgetItem( section_item, ["PCMCIA disk0:", "{} MiB".format(ios_router["disk0"])]) QtWidgets.QTreeWidgetItem( section_item, ["PCMCIA disk1:", "{} MiB".format(ios_router["disk1"])]) QtWidgets.QTreeWidgetItem( section_item, ["Auto delete:", "{}".format(ios_router["auto_delete_disks"])]) # fill out the Adapters section section_item = self._createSectionItem("Adapters") for slot_id in range(0, 7): slot = "slot{}".format(slot_id) if slot in ios_router and ios_router[slot]: QtWidgets.QTreeWidgetItem( section_item, ["Slot {}:".format(slot_id), ios_router[slot]]) if section_item.childCount() == 0: self.uiIOSRouterInfoTreeWidget.takeTopLevelItem( self.uiIOSRouterInfoTreeWidget.indexOfTopLevelItem( section_item)) # fill out the WICs section section_item = self._createSectionItem("WICs") for wic_id in range(0, 3): wic = "wic{}".format(wic_id) if wic in ios_router and ios_router[wic]: QtWidgets.QTreeWidgetItem( section_item, ["WIC {}:".format(wic_id), ios_router[wic]]) if section_item.childCount() == 0: self.uiIOSRouterInfoTreeWidget.takeTopLevelItem( self.uiIOSRouterInfoTreeWidget.indexOfTopLevelItem( section_item)) self.uiIOSRouterInfoTreeWidget.expandAll() self.uiIOSRouterInfoTreeWidget.resizeColumnToContents(0) self.uiIOSRouterInfoTreeWidget.resizeColumnToContents(1) self.uiIOSRoutersTreeWidget.setMaximumWidth( self.uiIOSRoutersTreeWidget.sizeHintForColumn(0) + 10)
def _refreshInfo(self, vmware_vm): """ Refreshes the content of the tree widget. """ self.uiVMwareVMInfoTreeWidget.clear() # fill out the General section section_item = self._createSectionItem("General") QtWidgets.QTreeWidgetItem(section_item, ["Template name:", vmware_vm["name"]]) QtWidgets.QTreeWidgetItem(section_item, ["Template ID:", vmware_vm.get("template_id", "none")]) if vmware_vm["linked_clone"]: QtWidgets.QTreeWidgetItem(section_item, ["Default name format:", vmware_vm["default_name_format"]]) try: QtWidgets.QTreeWidgetItem(section_item, ["Server:", ComputeManager.instance().getCompute(vmware_vm["compute_id"]).name()]) except KeyError: pass QtWidgets.QTreeWidgetItem(section_item, ["Headless mode enabled:", "{}".format(vmware_vm["headless"])]) QtWidgets.QTreeWidgetItem(section_item, ["On close:", "{}".format(vmware_vm["on_close"])]) QtWidgets.QTreeWidgetItem(section_item, ["Linked base VM:", "{}".format(vmware_vm["linked_clone"])]) QtWidgets.QTreeWidgetItem(section_item, ["Console type:", vmware_vm["console_type"]]) QtWidgets.QTreeWidgetItem(section_item, ["Auto start console:", "{}".format(vmware_vm["console_auto_start"])]) # fill out the Network section section_item = self._createSectionItem("Network") QtWidgets.QTreeWidgetItem(section_item, ["Adapters:", str(vmware_vm["adapters"])]) QtWidgets.QTreeWidgetItem(section_item, ["Name format:", vmware_vm["port_name_format"]]) if vmware_vm["port_segment_size"]: QtWidgets.QTreeWidgetItem(section_item, ["Segment size:", str(vmware_vm["port_segment_size"])]) if vmware_vm["first_port_name"]: QtWidgets.QTreeWidgetItem(section_item, ["First port name:", vmware_vm["first_port_name"]]) QtWidgets.QTreeWidgetItem(section_item, ["Use any adapter:", "{}".format(vmware_vm["use_any_adapter"])]) QtWidgets.QTreeWidgetItem(section_item, ["Type:", vmware_vm["adapter_type"]]) self.uiVMwareVMInfoTreeWidget.expandAll() self.uiVMwareVMInfoTreeWidget.resizeColumnToContents(0) self.uiVMwareVMInfoTreeWidget.resizeColumnToContents(1) self.uiVMwareVMsTreeWidget.setMaximumWidth(self.uiVMwareVMsTreeWidget.sizeHintForColumn(0) + 10)
def _get_appliances_from_server(self, appliance_filter=None): """ Gets the appliances from the server and display them. """ self.uiAppliancesTreeWidget.clear() parent_routers = QtWidgets.QTreeWidgetItem(self.uiAppliancesTreeWidget) parent_routers.setText(0, "Routers") parent_routers.setFlags(parent_routers.flags() & ~QtCore.Qt.ItemIsSelectable) parent_switches = QtWidgets.QTreeWidgetItem(self.uiAppliancesTreeWidget) parent_switches.setText(0, "Switches") parent_switches.setFlags(parent_switches.flags() & ~QtCore.Qt.ItemIsSelectable) parent_guests = QtWidgets.QTreeWidgetItem(self.uiAppliancesTreeWidget) parent_guests.setText(0, "Guests") parent_guests.setFlags(parent_guests.flags() & ~QtCore.Qt.ItemIsSelectable) parent_firewalls = QtWidgets.QTreeWidgetItem(self.uiAppliancesTreeWidget) parent_firewalls.setText(0, "Firewalls") parent_firewalls.setFlags(parent_firewalls.flags() & ~QtCore.Qt.ItemIsSelectable) self.uiAppliancesTreeWidget.expandAll() for appliance in ApplianceManager.instance().appliances(): if appliance_filter is None: appliance_filter = self.uiFilterLineEdit.text().strip() if appliance_filter and appliance_filter.lower() not in appliance["name"].lower(): continue if appliance["category"] == "router": item = QtWidgets.QTreeWidgetItem(parent_routers) elif appliance["category"].endswith("switch"): item = QtWidgets.QTreeWidgetItem(parent_switches) elif appliance["category"] == "firewall": item = QtWidgets.QTreeWidgetItem(parent_firewalls) elif appliance["category"] == "guest": item = QtWidgets.QTreeWidgetItem(parent_guests) if appliance["builtin"]: appliance_name = appliance["name"] else: appliance_name = "{} (custom)".format(appliance["name"]) item.setText(0, appliance_name) #item.setText(1, appliance["category"].capitalize().replace("_", " ")) if "qemu" in appliance: item.setText(1, "Qemu") elif "iou" in appliance: item.setText(1, "IOU") elif "dynamips" in appliance: item.setText(1, "Dynamips") elif "docker" in appliance: item.setText(1, "Docker") else: item.setText(1, "N/A") item.setText(2, appliance["vendor_name"]) item.setData(0, QtCore.Qt.UserRole, appliance) #item.setSizeHint(0, QtCore.QSize(32, 32)) item.setToolTip(0, self._get_tooltip_text(appliance)) Controller.instance().getSymbolIcon(appliance.get("symbol"), qpartial(self._setItemIcon, item), fallback=":/symbols/" + appliance["category"] + ".svg") self.uiAppliancesTreeWidget.sortByColumn(0, QtCore.Qt.AscendingOrder) self.uiAppliancesTreeWidget.resizeColumnToContents(0) if not appliance_filter: self.uiAppliancesTreeWidget.collapseAll()
def _refreshInfo(self, vbox_vm): self.uiVirtualBoxVMInfoTreeWidget.clear() # fill out the General section section_item = self._createSectionItem("General") QtWidgets.QTreeWidgetItem(section_item, ["Template name:", vbox_vm["name"]]) QtWidgets.QTreeWidgetItem(section_item, ["VirtualBox name:", vbox_vm["vmname"]]) if vbox_vm["linked_clone"]: QtWidgets.QTreeWidgetItem( section_item, ["Default name format:", vbox_vm["default_name_format"]]) QtWidgets.QTreeWidgetItem(section_item, ["RAM:", str(vbox_vm["ram"])]) try: QtWidgets.QTreeWidgetItem(section_item, [ "Server:", ComputeManager.instance().getCompute(vbox_vm["server"]).name() ]) except KeyError: pass QtWidgets.QTreeWidgetItem( section_item, ["Headless mode enabled:", "{}".format(vbox_vm["headless"])]) QtWidgets.QTreeWidgetItem( section_item, ["ACPI shutdown enabled:", "{}".format(vbox_vm["acpi_shutdown"])]) QtWidgets.QTreeWidgetItem( section_item, ["Linked base VM:", "{}".format(vbox_vm["linked_clone"])]) # fill out the Network section section_item = self._createSectionItem("Network") QtWidgets.QTreeWidgetItem( section_item, ["Adapters:", str(vbox_vm["adapters"])]) QtWidgets.QTreeWidgetItem( section_item, ["Name format:", vbox_vm["port_name_format"]]) if vbox_vm["port_segment_size"]: QtWidgets.QTreeWidgetItem( section_item, ["Segment size:", str(vbox_vm["port_segment_size"])]) if vbox_vm["first_port_name"]: QtWidgets.QTreeWidgetItem( section_item, ["First port name:", vbox_vm["first_port_name"]]) QtWidgets.QTreeWidgetItem( section_item, ["Use any adapter:", "{}".format(vbox_vm["use_any_adapter"])]) QtWidgets.QTreeWidgetItem(section_item, ["Type:", vbox_vm["adapter_type"]]) self.uiVirtualBoxVMInfoTreeWidget.expandAll() self.uiVirtualBoxVMInfoTreeWidget.resizeColumnToContents(0) self.uiVirtualBoxVMInfoTreeWidget.resizeColumnToContents(1) self.uiVirtualBoxVMsTreeWidget.setMaximumWidth( self.uiVirtualBoxVMsTreeWidget.sizeHintForColumn(0) + 10)
def _refreshInfo(self, docker_container): """ Refreshes the content of the tree widget. """ self.uiDockerVMInfoTreeWidget.clear() # fill out the General section section_item = self._createSectionItem("General") QtWidgets.QTreeWidgetItem(section_item, ["Template name:", docker_container["name"]]) QtWidgets.QTreeWidgetItem( section_item, ["Template ID:", docker_container.get("template_id", "none")]) QtWidgets.QTreeWidgetItem(section_item, ["Image name:", docker_container["image"]]) try: QtWidgets.QTreeWidgetItem(section_item, [ "Server:", ComputeManager.instance().getCompute( docker_container["compute_id"]).name() ]) except KeyError: pass QtWidgets.QTreeWidgetItem( section_item, ["Console type:", str(docker_container["console_type"])]) QtWidgets.QTreeWidgetItem(section_item, [ "Auto start console:", "{}".format( docker_container["console_auto_start"]) ]) QtWidgets.QTreeWidgetItem( section_item, ["Default name format:", docker_container["default_name_format"]]) QtWidgets.QTreeWidgetItem( section_item, ["Adapters:", str(docker_container["adapters"])]) if docker_container["start_command"]: QtWidgets.QTreeWidgetItem( section_item, ["Start command:", str(docker_container["start_command"])]) if docker_container["environment"]: QtWidgets.QTreeWidgetItem( section_item, ["Environment:", str(docker_container["environment"])]) if docker_container["extra_hosts"]: QtWidgets.QTreeWidgetItem( section_item, ["Extra hosts:", str(docker_container["extra_hosts"])]) if docker_container["extra_volumes"]: QtWidgets.QTreeWidgetItem(section_item, [ "Extra volumes:", "\n".join(docker_container["extra_volumes"]) ]) self.uiDockerVMInfoTreeWidget.expandAll() self.uiDockerVMInfoTreeWidget.resizeColumnToContents(0) self.uiDockerVMInfoTreeWidget.resizeColumnToContents(1) self.uiDockerVMsTreeWidget.setMaximumWidth( self.uiDockerVMsTreeWidget.sizeHintForColumn(0) + 10)