def getVMinfo(self, name): _vmList = list() _rows = self.__conn.execute \ ( \ "SELECT \ name, \ createdate, \ lifetimedays, \ comment, \ mail, \ image_file, \ owner, \ os \ FROM vmachine \ WHERE \ name = '" + name + "';" \ ) for _row in _rows: name, createdate, lifetimedays, comment, mail, image_file, owner, os = _row _vmInfo = VMinfo() _vmInfo.name = name _vmInfo.createdate = createdate _vmInfo.lifetimedays = lifetimedays _vmInfo.comment = comment _vmInfo.mail = mail _vmInfo.image_file = image_file _vmInfo.owner = owner _vmInfo.os = os _vmList.append(_vmInfo) return _vmList[0]
def importAllExistVM(self): logging.debug("[importAllExistVM]") _kvmManager = KVMManager() _infotext = _kvmManager.getAllExistVM() _vmInfo = VMinfo() _importVMList = list() _VMList = list() try: _VMList = self.__vmInfoDB.getAllVMinfo() except sqlite3.Error, e: infotext = "An error occurred:", e.args[0] QtGui.QMessageBox.critical(self, "Error", str(infotext)) return
def createNewVM(self): print "[createNewVM...]" _result = "" _kvmManager = KVMManager() _vmInfo = VMinfo() _owner = str(self.ownerComboBox.currentText()) _userInfo = self.__vmInfoDB.getUser(_owner) _rawDistName = str(self.isoComboBox.currentText()) _distName = _rawDistName.replace(" ", "_") _IsoPath = self.__vmInfoDB.getISOpath(_rawDistName) print "[_IsoPath]: ", _IsoPath if _IsoPath == -1: QtGui.QMessageBox.critical(self, "Error","No Paht of ISO found!") return _lifeTime = str(self.lifeTimeSpinBox.value() ) _comment = unicode(self.commentLineEdit.text()) _vmName = unicode(self.vmNameLineEdit.text()) _vmName = _vmName.replace(unicode(" ", "utf-8"), "_") _vmName = _vmName.replace(unicode("ü", "utf-8"), "ue") _vmName = _vmName.replace(unicode("Ü", "utf-8"), "Ue") _vmName = _vmName.replace(unicode("ö", "utf-8"), "oe") _vmName = _vmName.replace(unicode("Ö", "utf-8"), "Oe") _vmName = _vmName.replace(unicode("ä", "utf-8"), "ae") _vmName = _vmName.replace(unicode("Ä", "utf-8"), "Ae") _vmName = _vmName.replace(unicode("ß", "utf-8"), "ss") _vmName = _owner + "_" + _distName + "_" + _vmName _kvmManager.setOwnersHome(_userInfo.homedir) _kvmManager.setMachineName(_vmName) _kvmManager.setRAM(str(self.ramSpinBox.value())) _kvmManager.setHdSize(str(self.hdSpinBox.value())) _kvmManager.setIsoPath(_IsoPath) try: _result = _kvmManager.createNewMachine() QtGui.QMessageBox.information(self, "Result", _result) except subprocess.CalledProcessError, e: infotext = "An error occurred:", (e.output.replace('\n',' ')).replace('\r',' ') #QtGui.QMessageBox.critical(self, "Error",str(infotext)) ret = QtGui.QMessageBox.critical(self, \ "Error", \ str(infotext), \ QtGui.QMessageBox.Cancel | QtGui.QMessageBox.Ignore) if (ret == QtGui.QMessageBox.Cancel): return
def reConfigureVM(self): print "[reConfigureVM...]" _result = "" _vmInfo = VMinfo() _vmInfo.name = str(self.vmNameLineEdit.text()) _vmInfo.lifetimedays = str(self.lifeTimeSpinBox.value()) _vmInfo.comment = unicode(self.commentLineEdit.text(), "utf-8") _vmInfo.mail = str(self.mailLineEdit.text()) _vmInfo.owner = unicode(self.__vmOwnerLineEdit.text(), "utf-8") try: self.__vmInfoDB.updateVMinfo(_vmInfo) except sqlite3.Error, e: infotext = "An error occurred:", e.args[0] QtGui.QMessageBox.critical(self, "Error",str(infotext)) return
def cloneVM(self): print "[cloneVM...]" _result = "" _kvmManager = KVMManager() _vmInfo = VMinfo() _owner = str(self.owenerComboBox.currentText()) _userInfo = self.__vmInfoDB.getUser(_owner) _lifeTime = str(self.lifeTimeSpinBox.value()) _comment = unicode(self.commentNameLineEdit.text()) _vmName = unicode(self.vmNameLineEdit.text()) _vmName = _vmName.replace(unicode(" ", "utf-8"), "_") _vmName = _vmName.replace(unicode("ü", "utf-8"), "ue") _vmName = _vmName.replace(unicode("Ü", "utf-8"), "Ue") _vmName = _vmName.replace(unicode("ö", "utf-8"), "oe") _vmName = _vmName.replace(unicode("Ö", "utf-8"), "Oe") _vmName = _vmName.replace(unicode("ä", "utf-8"), "ae") _vmName = _vmName.replace(unicode("Ä", "utf-8"), "Ae") _vmName = _vmName.replace(unicode("ß", "utf-8"), "ss") self._distName = self._distName.replace(unicode(" ", "utf-8"), "_") _vmName = _owner + "_" + self._distName + "_" + _vmName _kvmManager.setOwnersHome(_userInfo.homedir) _kvmManager.setMachineName(_vmName) _kvmManager.setOriginalVM(self.__originalVM) try: _result = _kvmManager.cloneMachine() mb = DetailInfoDialog() mb.setText("Result detail:") mb.setDetailedText(_result) mb.exec_() #QtGui.QMessageBox.information(self, "Result", _result) except subprocess.CalledProcessError, e: infotext = "An error occurred:", (e.output.replace('\n',' ')).replace('\r',' ') QtGui.QMessageBox.critical(self, "Error",str(infotext)) return