easybuild.framework.extension module

Generic EasyBuild support for software extensions (e.g. Python packages). The Extension class should serve as a base class for all extensions.

author:Stijn De Weirdt (Ghent University)
author:Dries Verdegem (Ghent University)
author:Kenneth Hoste (Ghent University)
author:Pieter De Baets (Ghent University)
author:Jens Timmerman (Ghent University)
author:Toon Willems (Ghent University)
class easybuild.framework.extension.Extension(mself, ext, extra_params=None)

Bases: object

Support for installing extensions.


Check progress of installation command that was started asynchronously.

Returns:True if command completed, False otherwise
async_cmd_start(cmd, inp=None)

Start installation asynchronously using specified command.


Shortcut the get the extension name.


Stuff to do after installing a extension.


Stuff to do before installing a extension.


Return list of required dependencies for this extension.

run(*args, **kwargs)

Actual installation of an extension.

run_async(*args, **kwargs)

Asynchronous installation of an extension.


Sanity check to run after installing extension


Toolchain used to build this extension.


Shortcut the get the extension version.

easybuild.framework.extension.resolve_exts_filter_template(exts_filter, ext)

Resolve the exts_filter tuple by replacing the template values using the extension :param exts_filter: Tuple of (command, input) using template values (ext_name, ext_version, src) :param ext: Instance of Extension or dictionary like with ‘name’ and optionally ‘options’, ‘version’, ‘source’ keys :return (cmd, input) as a tuple of strings