From ce6acf350e63c5c0d75a70fb763f072e3604d334 Mon Sep 17 00:00:00 2001 From: Alexander Grund Date: Mon, 15 Sep 2025 09:30:31 +0200 Subject: [PATCH 1/4] Make command environment of shell commands more discoverable in the log Put the command on an own, indented line so it is easier to find in the log. --- easybuild/tools/run.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/easybuild/tools/run.py b/easybuild/tools/run.py index 87723e0e53..a28b077cfb 100644 --- a/easybuild/tools/run.py +++ b/easybuild/tools/run.py @@ -454,7 +454,7 @@ def to_cmd_str(cmd): cmd_name = fileprefix_from_cmd(os.path.basename(cmd_str.split(' ')[0])) tmpdir = tempfile.mkdtemp(dir=toptmpdir, prefix=f'{cmd_name}-') - _log.info(f'run_shell_cmd: command environment of "{cmd_str}" will be saved to {tmpdir}') + _log.info(f'run_shell_cmd: command environment of\n\t"{cmd_str}"\nwill be saved to {tmpdir}') cmd_out_fp = os.path.join(tmpdir, 'out.txt') _log.info(f'run_shell_cmd: Output of "{cmd_str}" will be logged to {cmd_out_fp}') From da8aa4e850d3256d46152db40d4aea49bee6a010 Mon Sep 17 00:00:00 2001 From: Alexander Grund Date: Mon, 15 Sep 2025 09:41:26 +0200 Subject: [PATCH 2/4] Combine log messages for run_shell_cmd into 1 --- easybuild/tools/run.py | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/easybuild/tools/run.py b/easybuild/tools/run.py index a28b077cfb..ee4f3b909f 100644 --- a/easybuild/tools/run.py +++ b/easybuild/tools/run.py @@ -454,17 +454,20 @@ def to_cmd_str(cmd): cmd_name = fileprefix_from_cmd(os.path.basename(cmd_str.split(' ')[0])) tmpdir = tempfile.mkdtemp(dir=toptmpdir, prefix=f'{cmd_name}-') - _log.info(f'run_shell_cmd: command environment of\n\t"{cmd_str}"\nwill be saved to {tmpdir}') - cmd_out_fp = os.path.join(tmpdir, 'out.txt') - _log.info(f'run_shell_cmd: Output of "{cmd_str}" will be logged to {cmd_out_fp}') if split_stderr: cmd_err_fp = os.path.join(tmpdir, 'err.txt') - _log.info(f'run_shell_cmd: Errors and warnings of "{cmd_str}" will be logged to {cmd_err_fp}') else: cmd_err_fp = None cmd_sh = create_cmd_scripts(cmd_str, work_dir, env, tmpdir, cmd_out_fp, cmd_err_fp) + + log_str = f'Command environment of\n\t"{cmd_str}"\nwill be saved to {cmd_sh}\n' + log_str += f'Output will be logged to {cmd_out_fp}' + if cmd_err_fp: + log_str += f'\nErrors and warnings will be logged to {cmd_err_fp}' + _log.info(f'run_shell_cmd: {log_str}') + else: tmpdir, cmd_out_fp, cmd_err_fp, cmd_sh = None, None, None, None From 542deefc0c7e4523d0c5c78d5c4215e5613f6d7c Mon Sep 17 00:00:00 2001 From: Alexander Grund Date: Thu, 23 Oct 2025 08:42:57 +0200 Subject: [PATCH 3/4] Enhance wording Co-authored-by: Kenneth Hoste --- easybuild/tools/run.py | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/easybuild/tools/run.py b/easybuild/tools/run.py index ee4f3b909f..ff33917569 100644 --- a/easybuild/tools/run.py +++ b/easybuild/tools/run.py @@ -462,8 +462,12 @@ def to_cmd_str(cmd): cmd_sh = create_cmd_scripts(cmd_str, work_dir, env, tmpdir, cmd_out_fp, cmd_err_fp) - log_str = f'Command environment of\n\t"{cmd_str}"\nwill be saved to {cmd_sh}\n' - log_str += f'Output will be logged to {cmd_out_fp}' + log_str = '\n'.join([ + 'Script to start debug shell for command', + f'\t{cmd_str}', + f'will be saved to {cmd_sh}', + ]) + log_str += f'\nOutput will be logged to {cmd_out_fp}' if cmd_err_fp: log_str += f'\nErrors and warnings will be logged to {cmd_err_fp}' _log.info(f'run_shell_cmd: {log_str}') From 4a3f70377dac3769d5f97387fb830ac927d58276 Mon Sep 17 00:00:00 2001 From: Alexander Grund Date: Thu, 23 Oct 2025 08:45:05 +0200 Subject: [PATCH 4/4] Combine string building --- easybuild/tools/run.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/easybuild/tools/run.py b/easybuild/tools/run.py index ff33917569..4b9615ff88 100644 --- a/easybuild/tools/run.py +++ b/easybuild/tools/run.py @@ -466,8 +466,8 @@ def to_cmd_str(cmd): 'Script to start debug shell for command', f'\t{cmd_str}', f'will be saved to {cmd_sh}', + f'Output will be logged to {cmd_out_fp}', ]) - log_str += f'\nOutput will be logged to {cmd_out_fp}' if cmd_err_fp: log_str += f'\nErrors and warnings will be logged to {cmd_err_fp}' _log.info(f'run_shell_cmd: {log_str}')