Hi Malcolm,

First of all: let me apologize for not getting back to you in some of the issues you've replied to on the EasyBuild GitHub repository. Your messages have been burning a hole in my inbox, but I didn't get to responding to them yet...

On 09/02/15 22:49, Cook, Malcolm wrote:

Hi,

I am currently learning EasyBuild/Lmod and strategizing for deployment to a common network shared mountpoint, say $HPCBC, for use by about half-dozen HPC linux running CentOS7.

I wonder if there is any information that would help me with pros/cons on waiting for EB 2.x before deployment, such as:

intended scope of changes

intended backward compatibility (should all existing modules 'just work')

ETA for first release intended for general availability (non-beta)


EasyBuild v2.0 is going to include a couple of backward-incompatible changes (hence the major version bump), but most of these changes shouldn't affect users new to the tool.

All the easyblocks and easyconfigs files included in EasyBuild v1.16.1 will still work with EasyBuild v2.0, since non of them are relying on deprecated functionality for which support will be dropped in EasyBuild v2.0. For all details w.r.t. backwards-incompatible changes, see http://easybuild.readthedocs.org/en/latest/Deprecated-functionality.html .

There are a couple of other major changes we're planning on including in EasyBuild v2.0, i.e., to stop including a copy of the vsc-base Python package that serves as a base for the EasyBuild framework and use it as a proper dependency instead, and dropping support for Python 2.4.x in favor of Python 2.6.x. In practice, these changes should not affect end users (assuming your system Python is 2.6 or a newer Python 2 version).

A detailed overview of the (major) changes being made in EasyBuild v2.0 is available at https://github.com/hpcugent/easybuild-framework/issues/1000, which also provides an up-to-date status of the progress being made.

In terms of planning: EasyBuild was planned to be the first release in 2015, and we're sticking to that (i.e. there will be no further releases on the 1.x branch).

I was hoping to push out EasyBuild v2.0 last week, in time for the 8th EasyBuild hackathon which is running in Basel this week (see https://github.com/hpcugent/easybuild/wiki/8th-EasyBuild-hackathon), but I didn't manage to get it ready (and I didn't want to rush it out either).

So, it'll probably be shifted more towards the end of this month, since I'll be busy with the hackathon this week, and will have other stuff to attend to once I'm back at the office.

Also, I am somewhat struggling with my EB 1.x evaluation/testing (also on CentOS7) and wonder about relative value of using the various installation methods, being

1) python bootstrap_eb.py $HPCBC/easybuild # currently yields version 1.16.1

2) pip install --install-option "--prefix=${HPCBC}/EasyBuild" easybuild

3)

> pip install --install-option "--prefix=1.16.1" easybuild

b) pip install --install-option "--prefix=1.16.1" easybuild

My impression is that the advantage of using the bootstrap procedure is that it builds a 'module' file.Is there more that I am missing?

If the bootstrap procedure works for you, and you're happy with using EasyBuild by loading it as a module, I would recommend that approach.

If you want EasyBuild installed on the system directly so you can use it without having to load a module, you can resort to the standard Python installation tools like easy_install or pip.

The main reason we introduced the bootstrap procedure is because the standard Python installation tools tend to be quite quirky, depending on how they were installed or configured... Pro tip: stay away from using the "--user" install option...

Finally, I have the following observations about the install that I hope you find worthy additions to your installation documentation:

xmlrunner is python module optionally used by eb boostrap unit test which allows them to run faster! NB - in my hands the test results are DIFFERENT if present - perhaps a "bad thing". Can be installed with: `pip install xmlrunner`-- add to http://easybuild.readthedocs.org/en/latest/Installation.html#optional-dependencies


Thanks for bringing this up. xmlrunner should be entirely optional. I wasn't aware that it can make the test results run faster... Do you have any more details there?

There are some known issues w.r.t. robustness of the unit tests, which we hope to fix in EasyBuild v2.0 (see also the references in https://github.com/hpcugent/easybuild-framework/issues/1000).

Do you have more details to share on which unit tests are failing for you? Maybe include the output you're getting in a gist (https://gist.github.com)

tcl need be installed (in my experience) (regardless of whether Tcl/C environment modules are to be used - i.e. even if only Lmod is to be used) - add to http://easybuild.readthedocs.org/en/latest/Installation.html#requirements

Yes, tclsh is required even if you're using Lmod, because (for now) EasyBuild only supports generating module files in Tcl syntax, and Lmod needs tclsh to be able to translate Tcl to Lua on the fly.

Lmod will now also complain if tclsh is missing and it was configured to be able to consume Tcl module files, since we reported this issue to Robert McLay, the Lmod maintainer.

We will also mention this in the documentation, as you suggest.

if Lua is built and installed in a non standard location, LUA_ROOT should be redefined accordingly, for example:

>sed -i '/#define LUA_ROOT/s:/usr/local/:${INSTALL_TOP}/:' src/luaconf.h


This is an Lmod issue, but: i) lua should be available in $PATH when building/installing Lmod, ii) if Lmod also requires lua.h (it depends on whether you have lua-term available on your system or not), you can point to its location using the --with-lua-include configure option.

There is a known issue in Lmod 5.8.6 w.r.t. finding lua.h in the 'make install' step, which is already fixed in the HEAD version of Lmod in the GitHub repository (see https://github.com/TACC/Lmod/commit/ba889b1887d5b7484e420ec1f0dfce372d36e11e).


Don't hesitate to let us know if you have any further questions or remarks/suggestions.


regards,

Kenneth

Reply via email to