Great, that sounds good
thanks again Michael On Fri, Mar 20, 2015 at 3:08 PM, Kenneth Hoste <[email protected]> wrote: > > > On 20/03/15 20:43, Michael Thomadakis wrote: > > Hi Kenneth, > > I see. We can leave with that. To me hierarchical name space is a most > important capability. No long unwieldy lists :) > > How easy would be to transition a flat EB name space into a hierchical > one? Which part of a package's EB spec would need to change ? > > > Depends on what you mean by transitioning... Right now, it would mean > reinstalling the software itself, since EasyBuild doesn't support only > regenerating module files (yet). > > In terms of the build specifications (easyconfig files, see > http://easybuild.readthedocs.org/en/latest/Concepts_and_Terminology.html#easyconfig-files), > nothing needs to change at all. > > You just need to tell EasyBuild to use a different module naming scheme. > > For example, to use the hierarchical module naming scheme that comes with > EasyBuild, you can run something like: > > eb --module-naming-scheme=HierarchicalMNS ... > > By default, the EasyBuildMNS is used, which is basically > <name>/<version>-<toolchain>-<versionsuffix> . > > > You can just as easily use a custom module naming scheme too, so you > really have full freedom there w.r.t. how your module tree ends up looking > like. > > > regards, > > Kenneth > > > > thanks > Michael > > On Fri, Mar 20, 2015 at 12:33 PM, Kenneth Hoste <[email protected]> > wrote: > >> Hi Michael, >> >> On 20/03/15 16:02, Michael Thomadakis wrote: >> >> Hi Kenneth, >> >> thanks for your prompt reply. >> >> I assume that the installation paths for the packages we produce with >> EB may also have a hierarchical structure, as in : >> >> *$INSTDIR/hdf5/1.8.14/**rhel6/**ompi_1.8.4/intel_15.0 * >> >> If this is not currently supported, do you have any plans to add this >> capability in the future? >> >> >> Currently, the install subdirectory is identical to the full module >> name, so yes, this is supported. >> >> EB doesn't provide a way (yet) to control the software subdir to be >> different than the module name. >> >> >> regards, >> >> Kenneth >> >> >> Thanks! >> >> Michael >> >> On Thu, Mar 19, 2015 at 3:44 PM, Kenneth Hoste <[email protected]> >> wrote: >> >>> 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 >>> >> >> >> > >

