Skip to content

Commit

Permalink
Add dependency_resolvers_conf.xml
Browse files Browse the repository at this point in the history
  • Loading branch information
natefoo committed Jan 28, 2019
1 parent 3f1d164 commit a4717da
Show file tree
Hide file tree
Showing 2 changed files with 54 additions and 0 deletions.
1 change: 1 addition & 0 deletions tasks/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -60,3 +60,4 @@
- server.ini
- local_env.sh
- job_metrics_conf.xml
- dependency_resolvers_conf.xml
53 changes: 53 additions & 0 deletions templates/dependency_resolvers_conf.xml.j2
Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@
<dependency_resolvers>
<!-- the default configuration, first look for dependencies installed from the toolshed -->
<tool_shed_packages />
<!-- then look for env.sh files in directories according to the "galaxy packages" schema.
These resolvers can take a base_path attribute to specify where to look for
package definitions, but by default look in the directory specified by tool_dependency_dir
in Galaxy's config/galaxy.ini -->
<galaxy_packages />
<!-- check whether the correct version has been installed via conda -->
<conda />
<!-- look for a "default" symlink pointing to a directory containing an
env.sh file for the package in the "galaxy packages" schema -->
<galaxy_packages versionless="true" />
<!-- look for any version of the dependency installed via conda -->
<conda versionless="true" />

<!-- LMOD dependency resolver (For the LMOD environment modules system - https://github.com/TACC/Lmod) -->
<!--
The LMOD dependency resolver attributes are:
* lmodexec - Path to the lmod executable on your system - Default: value of the "LMOD_CMD" environment variable
* settargexec - Path to the settarg executable on your system - Default: value of the "LMOD_SETTARG_CMD" environment variable
* modulepath - Path to the folder that contains the LMOD module files on your system - Default: value of the "MODULEPATH" environment variable
* versionless - Set it to true to resolve a dependency based on its name only (the version number is ignored) - Default: false
* mapping_files - Path to a Yaml configuration file that can be used to link tools requirements with existing LMOD modules - Default: config/lmod_modules_mapping.yml
Important notes:
- All the above attributes are optional
- The value of the lmodexec attribute can't just be "module" because module is actually a bash function and not the real LMOD binary (see the result of the "type module" command)
- The value of the modulepath attribute can also be a semicolon separated list of path
- In versionless mode, only modules marked as Default will be listed by the "avail" command (The -d option is used)
- If the config folder of your Galaxy instance contains a file called "lmod_modules_mapping.yml" (based on the lmod_modules_mapping.yml.sample file) it will be taken into consideration automatically
-->
<!--
<lmod />
<lmod versionless="true" />
-->

<!-- Example configuration of modules dependency resolver, uses Environment Modules -->
<!--
<modules modulecmd="/opt/Modules/3.2.9/bin/modulecmd" />
<modules modulecmd="/opt/Modules/3.2.9/bin/modulecmd" versionless="true" default_indicator="default" />
Attributes are:
* modulecmd - path to modulecmd
* versionless - default: false - whether to resolve tools using a version number or not
* find_by - directory or avail - use the DirectoryModuleChecker or AvailModuleChecker
* prefetch - default: true - in the AvailModuleChecker prefetch module info with 'module avail'
* default_indicator - default: '(default)' - what indicate to the AvailModuleChecker that a module is the default version
-->

<!-- other resolvers
<tool_shed_tap />
<homebrew />
-->
</dependency_resolvers>

0 comments on commit a4717da

Please sign in to comment.