def workload_storageutilization_cephfs(request, project, fio_pvc_dict, fio_job_dict, fio_configmap_dict, measurement_dir, tmp_path, supported_configuration): """ In order to use this fixture you need to pass 3 indirect parameters: target_percentage (float): the percentage storage utilization(from 0.01 to 0.99). keep_fio_data (bool): indicate if you want to keep the fio data after the test is finished. minimal_time (int): Minimal number of seconds to monitor a system (See more details in the function 'measure_operation'). For example: Let's say I want to use workload_storageutilization_cephfs fixture with 'target_percentage'=0.25, 'keep_fio_data'=True, 'minimal_time'=120 then In my test I will specify these parameters: @pytest.mark.parametrize("workload_storageutilization_cephfs", [(0.25, True, 120)], indirect=["workload_storageutilization_cephfs"]) """ target_percentage, keep_fio_data, minimal_time = request.param percent_to_fill = int(target_percentage * 100) fixture_name = f"workload_storageutilization_{percent_to_fill}p_cephfs" measured_op = workload_fio_storageutilization( fixture_name, project, fio_pvc_dict, fio_job_dict, fio_configmap_dict, measurement_dir, tmp_path, target_percentage=target_percentage, keep_fio_data=keep_fio_data, minimal_time=minimal_time, ) return measured_op
def workload_storageutilization_95p_cephfs(project, fio_pvc_dict, fio_job_dict, fio_configmap_dict, measurement_dir, tmp_path, supported_configuration): target_percentage = 0.95 fixture_name = "workload_storageutilization_95p_cephfs" measured_op = workload_fio_storageutilization(fixture_name, target_percentage, project, fio_pvc_dict, fio_job_dict, fio_configmap_dict, measurement_dir, tmp_path) return measured_op
def workload_storageutilization_05p_rbd(project, fio_pvc_dict, fio_job_dict, fio_configmap_dict, measurement_dir, tmp_path): target_percentage = 0.05 fixture_name = "workload_storageutilization_05p_rbd" measured_op = workload_fio_storageutilization(fixture_name, target_percentage, project, fio_pvc_dict, fio_job_dict, fio_configmap_dict, measurement_dir, tmp_path) return measured_op
def workload_storageutilization_10g_cephfs(project, fio_pvc_dict, fio_job_dict, fio_configmap_dict, measurement_dir, tmp_path): fixture_name = "workload_storageutilization_10G_cephfs" measured_op = workload_fio_storageutilization(fixture_name, project, fio_pvc_dict, fio_job_dict, fio_configmap_dict, measurement_dir, tmp_path, target_size=10) return measured_op
def workload_storageutilization_85p_rbd(project, fio_pvc_dict, fio_job_dict, fio_configmap_dict, measurement_dir, tmp_path, supported_configuration): fixture_name = "workload_storageutilization_85p_rbd" measured_op = workload_fio_storageutilization(fixture_name, project, fio_pvc_dict, fio_job_dict, fio_configmap_dict, measurement_dir, tmp_path, target_percentage=0.85) return measured_op
def workload_storageutilization_checksum_rbd(project, fio_pvc_dict, fio_job_dict, fio_configmap_dict, measurement_dir, tmp_path): fixture_name = "workload_storageutilization_checksum_rbd" measured_op = workload_fio_storageutilization(fixture_name, project, fio_pvc_dict, fio_job_dict, fio_configmap_dict, measurement_dir, tmp_path, target_size=10, with_checksum=True) return measured_op