コード例 #1
0
 def libcurve_open(self, file_path, user_name, pass_word=""):
     user_info_t = curvefs.UserInfo_t()
     user_info_t.owner = user_name
     user_info_t.password = pass_word
     fd = cbdClient.Open(file_path, user_info_t)
     logger.info("fd=%s" % fd)
     return fd
コード例 #2
0
def unlink_clone_vol(vol_uuid):
    cbd = curvefs.CBDClient()
    rc = cbd.Init("./client.conf")
    if rc != 0:
        raise AssertionError
    filename = "/" + vol_uuid
    user = curvefs.UserInfo_t()
    user.owner = "test"
    logger2.debug("filename is %s"%filename)
    cbd.Unlink(str(filename), user)
    cbd.UnInit()
コード例 #3
0
 def libcurve_rename(self, user_name, old_path, new_path, pass_word=""):
     user_info_t = curvefs.UserInfo_t()
     user_info_t.owner = user_name
     user_info_t.password = pass_word
     rc = cbdClient.Rename(user_info_t, old_path, new_path)
     if rc != 0:
         logger.info("rename file fail! rc=%s" % rc)
         return rc
         raise AssertionError
     else:
         return rc
コード例 #4
0
 def libcurve_extend(self, file_path, user_name, new_size, pass_word=""):
     user_info_t = curvefs.UserInfo_t()
     user_info_t.owner = user_name
     user_info_t.password = pass_word
     rc = cbdClient.Extend(file_path, user_info_t, new_size)
     if rc != 0:
         logger.info("extend file fail. rc=%s" % rc)
         return rc
         #raise AssertionError
     else:
         return rc
コード例 #5
0
 def libcurve_statfs(self, file_name, user_name, pass_word=""):
     user_info_t = curvefs.UserInfo_t()
     user_info_t.owner = user_name
     user_info_t.password = pass_word
     file_info = curvefs.FileInfo_t()
     rc = cbdClient.StatFile(file_name, user_info_t, file_info)
     if rc == 0:
         return file_info
     else:
         logger.debug("statfs file %s fail! rc=%s" % (file_name, rc))
         return rc
         raise AssertionError
コード例 #6
0
 def libcurve_create(self, file_path, user_name, size, pass_word=""):
     user_info_t = curvefs.UserInfo_t()
     user_info_t.owner = user_name
     user_info_t.password = pass_word
     rc = cbdClient.Create(file_path, user_info_t, size)
     if rc != 0:
         #            print("create file %s fail! rc=%s" %(file_path,rc))
         logger.debug("create file %s fail! rc=%s" % (file_path, rc))
         return rc
         #raise AssertionError
     else:
         return rc
コード例 #7
0
 def libcurve_mkdir(self, dirpath, user_name, pass_word=""):
     user_info_t = curvefs.UserInfo_t()
     user_info_t.owner = user_name
     user_info_t.password = pass_word
     rc = cbdClient.Mkdir(dirpath, user_info_t)
     if rc != 0:
         #print "mkdir fail! rc=%s" % rc
         logger.info("mkdir fail! rc=%s" % rc)
         return rc
         #raise AssertionError
     else:
         return rc
コード例 #8
0
 def libcurve_delete(self, filepath, user_name, pass_word=""):
     user_info_t = curvefs.UserInfo_t()
     user_info_t.owner = user_name
     user_info_t.password = pass_word
     rc = cbdClient.Unlink(filepath, user_info_t)
     if rc != 0:
         #print "delete file fail! rc=%s" % rc
         logger.debug("delete file %s fail! rc=%s" % (filepath, rc))
         #            logger.info("delete file fail! rc=%s" % rc)
         return rc
         #raise AssertionError
     else:
         return rc
コード例 #9
0
def check_clone_vol_exist(clonevol_uuid):
    cbd = curvefs.CBDClient()
    rc = cbd.Init("./client.conf")
    if rc != 0:
        raise AssertionError
    filename = "volume-" + clonevol_uuid
    user = curvefs.UserInfo_t()
    user.owner = "cinder"
    dirs = cbd.Listdir("/cinder", user)
    for d in dirs:
        logger2.info("dir is %s,filename is %s"%(d,filename))
        if d == filename:
            cbd.UnInit()
            return True
    cbd.UnInit()
    return False
コード例 #10
0
def get_vol_md5(vol_uuid):
    cbd = curvefs.CBDClient()
    rc = cbd.Init("./client.conf")
    if rc != 0:
        raise AssertionError
    filename = "/" + vol_uuid
    user = curvefs.UserInfo_t()
    user.owner = "test"
#    user.password = ""
    logger2.info("file name is %s,type is %s"%(filename,type(filename)))
    logger2.info("user is %s,type is %s"%(user,type(user)))
    fd = cbd.Open(str(filename), user)
    buf = ''
    md5_obj = hashlib.md5()
    for i in range(1,2560):
        j = i - 1
        context = cbd.Read(fd, buf, 4096*1024*j,4096*1024)
        md5_obj.update(context)
    hash_code = md5_obj.hexdigest()
    md5 = str(hash_code).lower()
    cbd.Close(fd)
    cbd.UnInit()
    logger2.info("md5 is %s"%md5)
    return md5