EasyBuild
EasyBuild is a software build and installation framework written in Python that allows you to install software in a structured, repeatable and robust way.
Easybuild is motivated by the need for a tool that allows to:
- independently install multiple versions of software side-by-side
- support multiple compilers and libraries for building software and its
dependencies
- keep the software build configuration simple
- divert from the standard configure / make / make install with custom
procedures (which is often necessary for scientific software)
- use environment modules [7] for dependency resolution and making the
software available to users in a transparent way
- keep record of the installation logs
- keep track of installation configuration in version control
Some key properties of EasyBuild:
- installation configuration is done using a (very concise) .eb
specification file
- custom behaviour is described in easyblocks; these are Python classes
that can be plugged into the EasyBuild framework
- the generation of the module files to easily make the software
available to users
- the dependencies for installation are resolved using environment
modules and can be automatically installed using the robot feature
- after the installation, the specification files can be sent to a
repository for archiving
Speakers:
Jens Timmerman
Kenneth Hoste