def run(**kw): start = timeit.default_timer() log.info("Running cephfs CRITICAL test") ceph_nodes = kw.get("ceph_nodes") config = kw.get("config") num_of_dirs = config.get("num_of_dirs") ( fuse_clients, kernel_clients, mon_node, mounting_dir, mds_nodes, _, mon_node_ip, ) = utils.get_client_info(ceph_nodes, utils.clients) num_of_dirs = num_of_dirs / 5 utils.activate_multiple_mdss(mds_nodes) print( "###################################################################################" ) log.info("Execution of Test case 11229 started:") tc = "11129" with parallel() as p: p.spawn(utils.mkdir_pinning, fuse_clients, 0, num_of_dirs, "dir", 0) p.spawn(utils.mkdir_pinning, fuse_clients, num_of_dirs, num_of_dirs * 2, "dir", 0) p.spawn( utils.mkdir_pinning, fuse_clients, num_of_dirs * 2, num_of_dirs * 3, "dir", 0, ) p.spawn( utils.mkdir_pinning, fuse_clients, num_of_dirs * 3, num_of_dirs * 4, "dir", 0, ) p.spawn( utils.mkdir_pinning, kernel_clients, num_of_dirs * 4, num_of_dirs * 5, "dir", 1, ) with parallel() as p: p.spawn( utils.pinned_dir_io, kernel_clients, utils.mds_fail_over, 1, 0, num_of_dirs / 2, ) p.spawn( utils.pinned_dir_io, kernel_clients, utils.mds_fail_over, 2, num_of_dirs / 2, num_of_dirs, ) p.spawn( utils.pinned_dir_io, kernel_clients, utils.mds_fail_over, 1, num_of_dirs * 4, num_of_dirs * 4 + 10, ) log.info("Execution of Test case 11229 ended:") tc = utils.rc_verify(tc, utils.RC) utils.output.append(tc) print( "###################################################################################" ) log.info("Execution of Test case 11228 started:") tc = "11128" with parallel() as p: p.spawn( utils.mkdir_pinning, fuse_clients, num_of_dirs * 6, num_of_dirs * 11, "dir", 0, ) p.spawn( utils.mkdir_pinning, kernel_clients, num_of_dirs * 11, num_of_dirs * 21, "dir", 1, ) with parallel() as p: p.spawn( utils.pinned_dir_io, kernel_clients, utils.mds_fail_over, 10, num_of_dirs * 6, num_of_dirs * 7, ) p.spawn( utils.pinned_dir_io, kernel_clients, utils.mds_fail_over, 20, num_of_dirs * 7, num_of_dirs * 8, ) log.info("Execution of Test case 11228 ended:") tc = utils.rc_verify(tc, utils.RC) utils.output.append(tc) print( "###################################################################################" ) log.info("Execution of Test case 11230 started:") tc = "11130" with parallel() as p: p.spawn( utils.mkdir_pinning, fuse_clients, num_of_dirs * 21, num_of_dirs * 21 + 25, "dir", 0, ) p.spawn( utils.mkdir_pinning, kernel_clients, num_of_dirs * 21 + 25, num_of_dirs * 21 + 50, "dir", 1, ) with parallel() as p: p.spawn( utils.pinned_dir_io, kernel_clients, utils.mds_fail_over, 10, num_of_dirs * 21, num_of_dirs * 21 + 25, ) p.spawn( utils.pinned_dir_io, kernel_clients, utils.mds_fail_over, 20, num_of_dirs * 21 + 25, num_of_dirs * 21 + 50, ) log.info("Execution of Test case 11230 ended:") tc = utils.rc_verify(tc, utils.RC) utils.output.append(tc) print( "###################################################################################" ) print("TESTS completed") print("Results:") for i in utils.output: print(i) for i, j in utils.failure.items(): print("client: %s Failure:%s " % (i, j)) print("Script execution time:------") stop = timeit.default_timer() total_time = stop - start mins, secs = divmod(total_time, 60) hours, mins = divmod(mins, 60) print("Hours:%d Minutes:%d Seconds:%f" % (hours, mins, secs)) return 0
def run(**kw): start = timeit.default_timer() log.info("Running cephfs CRITICAL test") ceph_nodes = kw.get("ceph_nodes") ( fuse_clients, kernel_clients, mon_node, mounting_dir, mds_nodes, md5sum_file_lock, mon_node_ip, ) = utils.get_client_info(ceph_nodes, utils.clients) utils.auth_list(utils.clients, mon_node) md5sum_list1 = utils.fuse_mount(fuse_clients, mounting_dir) md5sum_list2 = utils.kernel_mount(mounting_dir, mon_node_ip, kernel_clients) log.info("Test started for CEPH-10528:") with parallel() as p: for client in fuse_clients: p.spawn(utils.fuse_client_io, client, mounting_dir) with parallel() as p: for client in kernel_clients: p.spawn(utils.kernel_client_io, client, mounting_dir) utils.fuse_client_md5(fuse_clients, md5sum_list1) utils.kernel_client_md5(kernel_clients, md5sum_list2) sorted(md5sum_list1) sorted(md5sum_list2) log.info("Test completed for CEPH-10528:") print(md5sum_list1) print(md5sum_list2) if md5sum_list1 == md5sum_list2: log.info("Data consistancy found, Test case CEPH-10528 passed") else: log.error("Test case CEPH-10528 Failed") print("#" * 120) log.info("Test for CEPH-10529 will start:") with parallel() as p: for client in fuse_clients: p.spawn(utils.file_locking, client) print("-----------------------------------------") print(md5sum_file_lock) if md5sum_file_lock[0] == md5sum_file_lock[1]: log.info( "File Locking mechanism is working,data is not corrupted,test case CEPH-10529 passed" ) else: log.error( "File Locking mechanism is failed,data is corruptedtTest case CEPH-10529 Failed" ) log.info("Test completed for CEPH-10529") print("Script execution time:------") stop = timeit.default_timer() total_time = stop - start mins, secs = divmod(total_time, 60) hours, mins = divmod(mins, 60) print("Hours:%d Minutes:%d Seconds:%f" % (hours, mins, secs)) return 0