def purgeTarget(lvName, tpgt, suffix): iqn = "test" targetName = "%s:%d:%s" % (iqn, 123456, suffix) handler = VSServiceHandler() try: handler.cleanTarget(lvName, targetName, tpgt) print "purgeTarget success" VSLogger.debug("purgeTarget success") except Exception, e: errMsg = traceback.format_exc() VSLogger.critical(errMsg)
def cleanTarget(self, lvName, targetName, tpgt): # 先后顺序很重要, self.purgeIqn(targetName, tpgt) VSLogger.info("purgeIqn success") print "purgeIqn success" self.purgeTcm(lvName) VSLogger.debug("purgeTcm success") print "purgeTcm success" self.purgeIscsi(targetName) VSLogger.debug("purgeIscsi success") print "purgeIscsi success"
def detachLV(self, lvName): """服务接口,卸载逻辑卷 @param lvName 逻辑卷名称 """ VSLogger.debug("Detach LV(%s) begin..." % (lvName)) try: self.__purgeAttachLV(lvName) except Exception, e: errMsg = traceback.format_exc() VSLogger.error(errMsg) raise VSException(-1, getExceptionErrorMessage(e))
def startTarget(lvName, tpgt, lun, suffix): initiatorName = "iqn.1993-08.org.debian:01:5c487996fda6" iqn = "test" targetName = "%s:%d:%s" % (iqn, 123456, suffix) handler = VSServiceHandler() try: handler.sendTarget(lvName, tpgt, lun, initiatorName, suffix) print "sendTarget success" VSLogger.debug("sendTarget success") # time.sleep(1) # handler.cleanTarget(lvName,targetName) except Exception, e: handler.cleanTarget(lvName, targetName, tpgt) handler.sendTarget(lvName, tpgt, lun, initiatorName, suffix) errMsg = traceback.format_exc() VSLogger.critical(errMsg)