main
Main entry point for EasyBuild: build software from .eb input file
Authors:
- Stijn De Weirdt (Ghent University)
- Dries Verdegem (Ghent University)
- Kenneth Hoste (Ghent University)
- Pieter De Baets (Ghent University)
- Jens Timmerman (Ghent University)
- Toon Willems (Ghent University)
- Ward Poelmans (Ghent University)
- Fotis Georgatos (Uni.Lu, NTUA)
- Maxime Boissonneault (Compute Canada)
build_and_install_software(ecs, init_session_state, exit_on_failure=True)
¶
Build and install software for all provided parsed easyconfig files.
PARAMETER | DESCRIPTION |
---|---|
ecs |
easyconfig files to install software with
|
init_session_state |
initial session state, to use in test reports
|
exit_on_failure |
whether or not to exit on installation failure
DEFAULT:
|
clean_exit(logfile, tmpdir, testing, silent=False)
¶
Small utility function to perform a clean exit.
find_easyconfigs_by_specs(build_specs, robot_path, try_to_generate, testing=False)
¶
Find easyconfigs by build specifications.
main(args=None, logfile=None, do_build=None, testing=False, modtool=None, prepared_cfg_data=None)
¶
Main function: parse command line options, and act accordingly.
PARAMETER | DESCRIPTION |
---|---|
args |
command line arguments to use
DEFAULT:
|
logfile |
log file to use
DEFAULT:
|
do_build |
whether or not to actually perform the build
DEFAULT:
|
testing |
enable testing mode
DEFAULT:
|
prepared_cfg_data |
prepared configuration data for main function, as returned by prepare_main (or None)
DEFAULT:
|
prepare_main(args=None, logfile=None, testing=None)
¶
Prepare for calling main function by setting up the EasyBuild configuration
PARAMETER | DESCRIPTION |
---|---|
args |
command line arguments to take into account when parsing the EasyBuild configuration settings
DEFAULT:
|
logfile |
log file to use
DEFAULT:
|
testing |
enable testing mode
DEFAULT:
|
RETURNS | DESCRIPTION |
---|---|
3-tuple with initial session state data, EasyBuildOptions instance, and tuple with configuration settings |
process_easystack(easystack_path, args, logfile, testing, init_session_state, do_build)
¶
Process an EasyStack file. That means, parsing, looping over all items in the EasyStack file building (where requested) the individual items, etc
PARAMETER | DESCRIPTION |
---|---|
easystack_path |
path to EasyStack file to be processed
|
args |
original command line arguments as received by main()
|
logfile |
log file to use
|
testing |
enable testing mode
|
init_session_state |
initial session state, to use in test reports
|
do_build |
whether or not to actually perform the build
|
process_eb_args(eb_args, eb_go, cfg_settings, modtool, testing, init_session_state, hooks, do_build)
¶
Remainder of main function, actually process provided arguments (list of files/paths), according to specified options.
PARAMETER | DESCRIPTION |
---|---|
eb_args |
list of arguments that were specified to 'eb' command (or an easystack file); includes filenames/paths of files to process (mostly easyconfig files, but can also includes patch files, etc.)
|
eb_go |
EasyBuildOptions instance (option parser)
|
cfg_settings |
as returned by set_up_configuration
|
modtool |
the modules tool, as returned by modules_tool()
|
testing |
bool whether we're running in test mode
|
init_session_state |
initial session state, to use in test reports
|
hooks |
hooks, as loaded by load_hooks from the options
|
do_build |
whether or not to actually perform the build
|
run_contrib_style_checks(ecs, check_contrib, check_style)
¶
Handle running of contribution and style checks on specified easyconfigs (if desired).
RETURNS | DESCRIPTION |
---|---|
boolean indicating whether or not any checks were actually performed |