Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Missing cwd on log output #912

Open
surak opened this issue Jan 4, 2025 · 1 comment
Open

Missing cwd on log output #912

surak opened this issue Jan 4, 2025 · 1 comment
Milestone

Comments

@surak
Copy link

surak commented Jan 4, 2025

When reading a log, it is often useful to know from where the command is begin run. Consider the example:

== 2025-01-04 01:38:09,906 run.py:187 INFO Auto-enabling streaming output of '/p/software/jedi/stages/2025/software/Python/3.12.3-GCCcore-13.3.0/bin/python -m pip install --prefix=/p/project1/atmlaml/strube1/easybuild/jedi/software/tensorboard/2.18.0-gcccoreflexiblas-13.3.0-3.4.4  --no-deps  --ignore-installed  --no-index  --no-build-isolation  .' command because logging to stdout is enabled
== 2025-01-04 01:38:09,906 run.py:251 INFO Using /bin/bash as shell for running cmd:  /p/software/jedi/stages/2025/software/Python/3.12.3-GCCcore-13.3.0/bin/python -m pip install --prefix=/p/project1/atmlaml/strube1/easybuild/jedi/software/tensorboard/2.18.0-gcccoreflexiblas-13.3.0-3.4.4  --no-deps  --ignore-installed  --no-index  --no-build-isolation  .
== 2025-01-04 01:38:09,906 run.py:260 INFO running cmd:  /p/software/jedi/stages/2025/software/Python/3.12.3-GCCcore-13.3.0/bin/python -m pip install --prefix=/p/project1/atmlaml/strube1/easybuild/jedi/software/tensorboard/2.18.0-gcccoreflexiblas-13.3.0-3.4.4  --no-deps  --ignore-installed  --no-index  --no-build-isolation  . 
== 2025-01-04 01:38:10,493 build_log.py:171 ERROR EasyBuild crashed with an error (at easybuild/base/exceptions.py:126 in __init__): cmd " /p/software/jedi/stages/2025/software/Python/3.12.3-GCCcore-13.3.0/bin/python -m pip install --prefix=/p/project1/atmlaml/strube1/easybuild/jedi/software/tensorboard/2.18.0-gcccoreflexiblas-13.3.0-3.4.4  --no-deps  --ignore-installed  --no-index  --no-build-isolation  ." exited with exit code 1 and output:
ERROR: Directory '.' is not installable. Neither 'setup.py' nor 'pyproject.toml' found.

That's a lot to read in a typical easybuild file, but the crucial information in this case is: Where is this being ran from, that it doesn't find a file? It shows the full location of python and the prefix where to install it to, but not where it IS.

Going back to the rest of the gigantic log file doesn't help - one has to wonder where things are actually happening in such a case.

It would be very useful to know where the current shell thinks it is.

This is EB 4.8.4.

@boegel
Copy link
Member

boegel commented Jan 29, 2025

Can you check the logging in the upcoming EasyBuild 5.0 (through the beta release for example)?

A lot has changed there, since we've switched to run_shell_cmd underneath the covers.

I hope/suspect the logging is better there (and if not, we can easily change it, you have a good point)

@boegel boegel moved this to run_shell_cmd in EasyBuild v5.0 Jan 29, 2025
@boegel boegel added this to the 5.0 milestone Jan 29, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Status: run_shell_cmd
Development

No branches or pull requests

2 participants