Exemple #1
0
    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  
Exemple #2
0
    def deleteVM(self):
        logging.debug("[20110402201311] deleteVM")
        _infotext = "Do you want to delete this machine? \n"
        _infotext += "Has only effect for isar data base. Not for Libvirt."
        ret = QtGui.QMessageBox.warning(self, \
                            "Warning", \
                            _infotext, \
                            QtGui.QMessageBox.Cancel | QtGui.QMessageBox.Ok)

        if (ret == QtGui.QMessageBox.Cancel):
            return

        _vmName = ""
        for item in self.__listview.selectedItems():
            print "..", item.text(1)
            _vmName = str(item.text(1))

        if (_vmName == ""):
            self.statusBar().showMessage('No ToDo select...')
            QtGui.QMessageBox.information(self, "Abort",
                                          'No virtual machine select!')
            return

        print "[_vmName]", _vmName
        # prepare real pythsic remove...
        _vmInfo = self.__vmInfoDB.getVMinfo(_vmName)
        _kvmManager = KVMManager()
        _kvmManager.setMachineName(_vmInfo.name)
        _kvmManager.setIsoPath(_vmInfo.image_file)
        #        _result = _kvmManager.deleteVMConfigAndImage()

        try:
            self.__vmInfoDB.deleteVMinfo(_vmName)
        except sqlite3.Error, e:
            infotext = "An error occurred:", e.args[0]
            QtGui.QMessageBox.critical(self, "Error", str(infotext))
            self.refreshVMList()
            return
Exemple #3
0
    def deleteVM(self):
        logging.debug("[20110402201311] deleteVM")
        _infotext = "Do you want to delete this machine? \n"
        _infotext += "Has only effect for isar data base. Not for Libvirt."
        ret = QtGui.QMessageBox.warning(self, \
                            "Warning", \
                            _infotext, \
                            QtGui.QMessageBox.Cancel | QtGui.QMessageBox.Ok)

        if (ret == QtGui.QMessageBox.Cancel):
            return

        _vmName = ""
        for item in self.__listview.selectedItems():
            print  ".." , item.text(1)
            _vmName = str(item.text(1))

        if( _vmName == "" ):
            self.statusBar().showMessage('No ToDo select...')
            QtGui.QMessageBox.information(self, "Abort",'No virtual machine select!')
            return
        
        print "[_vmName]", _vmName
        # prepare real pythsic remove...
        _vmInfo = self.__vmInfoDB.getVMinfo(_vmName)
        _kvmManager = KVMManager()
        _kvmManager.setMachineName(_vmInfo.name)
        _kvmManager.setIsoPath(_vmInfo.image_file)
#        _result = _kvmManager.deleteVMConfigAndImage()

        
        try:              
            self.__vmInfoDB.deleteVMinfo(_vmName)
        except sqlite3.Error, e:
            infotext = "An error occurred:", e.args[0]
            QtGui.QMessageBox.critical(self, "Error",str(infotext))
            self.refreshVMList()
            return