Skip to content

robot

Dependency resolution functionality, a.k.a. robot.

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)

check_conflicts(easyconfigs, modtool, check_inter_ec_conflicts=True)

Check for conflicts in dependency graphs for specified easyconfigs.

PARAMETER DESCRIPTION
easyconfigs

list of easyconfig files (EasyConfig instances) to check for conflicts

modtool

ModulesTool instance to use

check_inter_ec_conflicts

also check for conflicts between (dependencies of) listed easyconfigs

DEFAULT: True

RETURNS DESCRIPTION

True if one or more conflicts were found, False otherwise

det_robot_path(robot_paths_option, tweaked_ecs_paths, extra_ec_paths, auto_robot=False)

Determine robot path.

dry_run(easyconfigs, modtool, short=False)

Compose dry run overview for supplied easyconfigs: * [ ] for unavailable * [x] for available * [F] for forced * [R] for rebuild

PARAMETER DESCRIPTION
easyconfigs

list of parsed easyconfigs (EasyConfig instances)

modtool

ModulesTool instance to use

short

use short format for overview: use a variable for common prefixes

DEFAULT: False

missing_deps(easyconfigs, modtool, terse=False)

Determine subset of easyconfigs for which no module is installed yet.

raise_error_missing_deps(missing_deps, extra_msg=None)

Raise error to report missing dependencies.

resolve_dependencies(easyconfigs, modtool, retain_all_deps=False, raise_error_missing_ecs=True)

Work through the list of easyconfigs to determine an optimal order

PARAMETER DESCRIPTION
easyconfigs

list of easyconfigs

modtool

ModulesTool instance to use

retain_all_deps

boolean indicating whether all dependencies must be retained, regardless of availability; retain all deps when True, check matching build option when False

DEFAULT: False

raise_error_missing_ecs

raise an error when one or more easyconfig files could not be found

DEFAULT: True

search_easyconfigs(query, short=False, filename_only=False, terse=False, consider_extra_paths=True, print_result=True, case_sensitive=False)

Search for easyconfigs, if a query is provided.

PARAMETER DESCRIPTION
query

regex query string

short

figure out common prefix of hits, use variable to factor it out

DEFAULT: False

filename_only

only print filenames, not paths

DEFAULT: False

terse

stick to terse (machine-readable) output, as opposed to pretty-printing

DEFAULT: False

consider_extra_paths

consider all paths when searching

DEFAULT: True

print_result

print the list of easyconfigs

DEFAULT: True

case_sensitive

boolean to decide whether search is case sensitive

DEFAULT: False

RETURNS DESCRIPTION

return a list of paths for the query