EESSI / software-layer

Software layer of the EESSI project
https://eessi.github.io/docs/software_layer
GNU General Public License v2.0
24 stars 47 forks source link

installing ReFrame in software layer fails, mixup with ReFrame installation in compat layer #127

Open boegel opened 3 years ago

boegel commented 3 years ago

We added ReFrame to the 2021.06 compat layer (cfr. https://github.com/EESSI/gentoo-overlay/pull/41), and now the installation of ReFrame in the 2021.06 software layer is failing:

== 2021-08-26 14:33:05,527 build_log.py:169 ERROR EasyBuild crashed with an error (at easybuild/base/exceptions.py:124 in __init__): Sanity check failed: sanity check command reframe -V exited with code 1 (output: Traceback (most recent call last):
  File "/cvmfs/pilot.eessi-hpc.org/2021.06/software/linux/aarch64/graviton2/software/ReFrame/3.6.2/bin/reframe", line 4, in <module>
    __import__('pkg_resources').run_script('ReFrame-HPC==3.6.2', 'reframe')
  File "/cvmfs/pilot.eessi-hpc.org/2021.06/software/linux/aarch64/graviton2/software/ReFrame/3.6.2/lib/python3.9/site-packages/pkg_resources/__init__.py", line 651, in run_script
    self.require(requires)[0].run_script(script_name, ns)
  File "/cvmfs/pilot.eessi-hpc.org/2021.06/software/linux/aarch64/graviton2/software/ReFrame/3.6.2/lib/python3.9/site-packages/pkg_resources/__init__.py", line 1436, in run_script
    raise ResolutionError(
pkg_resources.ResolutionError: Script 'scripts/reframe' not found in metadata at '/cvmfs/pilot.eessi-hpc.org/2021.06/compat/linux/aarch64/usr/lib/python3.9/site-packages/ReFrame_HPC-3.6.2-py3.9.egg-info'

It should be looking into /cvmfs/pilot.eessi-hpc.org/2021.06/software/linux/aarch64/software/ReFrame/3.6.2, not in /cvmfs/pilot.eessi-hpc.org/2021.06/compat/....

This probably happens because pkg_resources always looks in the Python installation itself before taking into account $PYTHONPATH.

boegel commented 3 years ago

Problem fixed with the changes in https://github.com/easybuilders/easybuild-easyconfigs/pull/13844

boegel commented 2 years ago

Rather than also installing ReFrame in the software layer, we should only have it in the compat layer?