Tools
This directory contains all tool description that can be imported and used within Snakemake workflows
Every rules for a tool should come with an example of use in a workflow as well as a config.yaml
example file (usually containing default parameters that are set up on the .rules
file itself).
Design and best practices
All Snakemake tool descriptions try to respect some rules and best practices in their design:
- First part correspond to all options that are set up from a
config.yaml
file. They all have the nomenclature__TOOLNAME_variable
. - Then the tool itself is described with:
- input with the nomenclature:
__TOOLNAME_input
- output with the nomenclature:
__TOOLNAME_output
- params with different options that are described above
- There is usually a
exec_command
to give the possibility to change the way the tool is called (locally installed, singularity ...) - There is usually a
options
to specify all other command line options
- There is usually a
- the shell command
- input with the nomenclature:
input and output are then set up in the Snakemake file that refer to the rule. Therefore the rules cannot be used directly.
Example
The directory for metaphlan2 rules give some example on the way to call the rules as well as setting
the parameters in the config.yaml
file.