diff --git a/perfmetrics/scripts/testing_on_gke/examples/dlio/parse_logs.py b/perfmetrics/scripts/testing_on_gke/examples/dlio/parse_logs.py index 29459df579..9b81b24ccd 100644 --- a/perfmetrics/scripts/testing_on_gke/examples/dlio/parse_logs.py +++ b/perfmetrics/scripts/testing_on_gke/examples/dlio/parse_logs.py @@ -385,7 +385,9 @@ def exportToGsheet( dlioWorkloads = dlio_workload.ParseTestConfigForDlioWorkloads( args.workload_config ) - downloadDlioOutputs(dlioWorkloads, args.instance_id) + ret = downloadDlioOutputs(dlioWorkloads, args.instance_id) + if ret != 0: + print(f"failed to download dlio outputs: {ret}") mash_installed = is_mash_installed() if not mash_installed: diff --git a/perfmetrics/scripts/testing_on_gke/examples/fio/parse_logs.py b/perfmetrics/scripts/testing_on_gke/examples/fio/parse_logs.py index cfa41ee91c..5eb1ef08d3 100644 --- a/perfmetrics/scripts/testing_on_gke/examples/fio/parse_logs.py +++ b/perfmetrics/scripts/testing_on_gke/examples/fio/parse_logs.py @@ -416,7 +416,9 @@ def exportToGsheet( fioWorkloads = fio_workload.ParseTestConfigForFioWorkloads( args.workload_config ) - downloadFioOutputs(fioWorkloads, args.instance_id) + ret = downloadFioOutputs(fioWorkloads, args.instance_id) + if ret != 0: + print(f"failed to download fio outputs: {ret}") mash_installed = is_mash_installed() if not mash_installed: diff --git a/perfmetrics/scripts/testing_on_gke/examples/utils/parse_logs_common.py b/perfmetrics/scripts/testing_on_gke/examples/utils/parse_logs_common.py index f6b9d5c618..63eabf0803 100644 --- a/perfmetrics/scripts/testing_on_gke/examples/utils/parse_logs_common.py +++ b/perfmetrics/scripts/testing_on_gke/examples/utils/parse_logs_common.py @@ -19,6 +19,7 @@ import os import subprocess from typing import Tuple +from utils.run_tests_common import run_command SUPPORTED_SCENARIOS = [ "local-ssd", @@ -35,9 +36,10 @@ def ensureDir(dirpath: str): pass -def download_gcs_objects(src: str, dst: str) -> Tuple[int, str]: - result = subprocess.run( - [ +def download_gcs_objects(src: str, dst: str) -> int: + print(f"Downloading files from {src} to {os.path.abspath(dst)} ...") + returncode = run_command( + " ".join([ "gcloud", "-q", # ignore prompts "storage", @@ -46,13 +48,9 @@ def download_gcs_objects(src: str, dst: str) -> Tuple[int, str]: "--no-user-output-enabled", # do not print names of objects being copied src, dst, - ], - capture_output=False, - text=True, + ]) ) - if result.returncode < 0: - return (result.returncode, f"error: {result.stderr}") - return result.returncode, "" + return returncode def parseLogParserArguments() -> object: