From ea3a498a98078299caa8cb0ddb2017d602eb6bf0 Mon Sep 17 00:00:00 2001 From: filipecosta90 Date: Thu, 5 Aug 2021 10:18:51 +0100 Subject: [PATCH] [fix] Ensuring a clean environment is used when multiple tests share the same remote machines --- pyproject.toml | 2 +- redisbench_admin/run_remote/run_remote.py | 15 +++++++++++++++ 2 files changed, 16 insertions(+), 1 deletion(-) diff --git a/pyproject.toml b/pyproject.toml index bd3003f..a91abbc 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,6 +1,6 @@ [tool.poetry] name = "redisbench-admin" -version = "0.4.5" +version = "0.4.6" description = "Redis benchmark run helper. A wrapper around Redis and Redis Modules benchmark tools ( ftsb_redisearch, memtier_benchmark, redis-benchmark, aibench, etc... )." authors = ["filipecosta90 "] readme = "README.md" diff --git a/redisbench_admin/run_remote/run_remote.py b/redisbench_admin/run_remote/run_remote.py index 18f70ba..f5f8681 100644 --- a/redisbench_admin/run_remote/run_remote.py +++ b/redisbench_admin/run_remote/run_remote.py @@ -59,6 +59,7 @@ get_run_full_filename, get_overall_dashboard_keynames, check_ec2_env, + execute_remote_commands, ) from redisbench_admin.utils.utils import ( @@ -199,6 +200,19 @@ def run_remote_command_logic(args, project_name, project_version): # after we've created the env, even on error we should always teardown # in case of some unexpected error we fail the test try: + # ensure /tmp folder is free of benchmark data from previous runs + remote_working_folder = "/tmp" + execute_remote_commands( + server_public_ip, + username, + private_key, + [ + "rm -rf {}/*.log".format(remote_working_folder), + "rm -rf {}/*.rdb".format(remote_working_folder), + "rm -rf {}/*.out".format(remote_working_folder), + "rm -rf {}/*.data".format(remote_working_folder), + ], + ) _, _, testcase_start_time_str = get_start_time_vars() logname = "{}_{}.log".format( test_name, testcase_start_time_str @@ -287,6 +301,7 @@ def run_remote_command_logic(args, project_name, project_version): result = wait_for_conn( local_redis_conn, dataset_load_timeout_secs ) + logging.info("Starting dataset loading...") dataset_load_end_time = datetime.datetime.now() if result is True: logging.info("Redis available")