Hi Michael,
(you're not subscribed to the EasyBuild mailing list yet, please do so
for further follow-up since this list is subscribers-only, I'm adding
you in CC for the time being)
On 19/03/15 21:05, Michael Thomadakis wrote:
Hello Jens,
I am interested in using EB to build and install s/w packages with
complex dependencies (eg., MPI stacks, Libs, language compilers, etc.)
I noticed though that the name space that EB maintains for modulefiles
and actual s/w installation paths is "flat" below the package name.
I would like to have something like:
*$MODPATH/rhel6/hdf5/1.8.14/ompi_1.8.4-intel_15.0
*
You probably want something like
$MODPATH/rhel6/hdf5/ompi_1.8.4-intel_15.0/1.8.14 instead (software
version as last component), although I guess it depends where you make
the split between 'prefix' and actual module name.
but it seems that with EB I can only have
*$MODPATH/rhel6/hdf5-1.8.14-ompi_1.8.4-intel_15.0 *
*
*
*
*
Is there any plan to support fully hierarchical name-space for both
modulefiles and installation paths?
You have full flexibility w.r.t. the module naming scheme which is used
by EasyBuild, and a hierarchical module naming scheme is already
supported (pro tip: use Lmod as a modules tool for this).
To implement your own custom module naming scheme, you just need to
provide a (small) Python module that implements your module naming scheme.
See
https://github.com/hpcugent/easybuild/wiki/Using-a-custom-module-naming-scheme
.
An example of a hierarchical module naming scheme is included with
recent EasyBuild releases, see
https://github.com/hpcugent/easybuild-framework/blob/master/easybuild/tools/module_naming_scheme/hierarchical_mns.py.
You can tweak that as you see fit.
I have to admit that the current documentation on implementing your own
*hierarchical* module naming scheme is a bit shaky, but the
HierarchicalMNS implementation itself is well documented via docstrings
and comments.
Let us know if you have any questions.
regards,
Kenneth