From 946700fcf7bf6b14b02ee7f4c8c8417ba21b2cfe Mon Sep 17 00:00:00 2001 From: Bernhard Mueller Date: Thu, 13 Apr 2023 11:27:43 +0700 Subject: [PATCH] Change workdir logic --- scripts/execute_code.py | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/scripts/execute_code.py b/scripts/execute_code.py index fa55a7f7..54944b32 100644 --- a/scripts/execute_code.py +++ b/scripts/execute_code.py @@ -54,17 +54,19 @@ def execute_python_file(file): def execute_shell(command_line): - old_dir = os.getcwd() + current_dir = os.getcwd() - workdir = os.path.abspath(os.path.join(os.path.dirname( __file__ ), '..', WORKSPACE_FOLDER)) + if not WORKSPACE_FOLDER in current_dir: # Change dir into workspace if necessary + work_dir = os.path.join(os.getcwd(), WORKSPACE_FOLDER) + os.chdir(work_dir) - print (f"Executing command '{command_line}' in working directory '{workdir}'") - - os.chdir(workdir) + print (f"Executing command '{command_line}' in working directory '{os.getcwd()}'") result = subprocess.run(command_line, capture_output=True, shell=True) - output = f"STDOUT:\n{result.stdout}\nSTDERR:\n{result.stderr}"; + output = f"STDOUT:\n{result.stdout}\nSTDERR:\n{result.stderr}" - os.chdir(old_dir) + # Change back to whatever the prior working dir was + + os.chdir(current_dir) return output