pyppl-require

Requirement manager for processes of PyPPL


License
MIT
Install
pip install pyppl-require==0.0.5

Documentation

pyppl_require

Requirement manager for PyPPL.

Installation

It requires pyppl_annotate.

pip install pyppl_require

Usage

> pyppl require
Description:
  Process requirement manager

Usage:
  pyppl require <--pipe AUTO> [OPTIONS]

Required options:
  -p, --pipe <AUTO>     - The pipeline script.

Optional options:
  --install <AUTO>      - Install the requirements.
                          You can specify a directory (default: $HOME/bin) to install the \
                          requirements.
                          Default: None
  -h, -H, --help        - Show help message and exit.

To allow your processes to be analyzed, you have to put a section in annotate using toml format:

pXXX.config.annotate = """
@requires:
  [bedtools]
  validate: "bedtools --version"
  install: "conda install -c bioconda bedtools"
  # other annotations
"""

If you want define those commands using process properties and aggrs:

pXXX.config.annotate = """
@requires:
  [bedtools]
  validate: "{{args.bedtools}} --version"
  install: "conda install -c bioconda bedtools"
  # other annotations
"""

Install to a specify directory:

pXXX.config.annotate = """
@requires:
  [bedtools]
  validate: "{{args.bedtools}} --version"
  install: "conda install -c bioconda bedtools; ln -s $(which bedtools) {{bindir}}/bedtools"
  # other annotations
"""

{{bindir}} will be the directory passed to the command line.

pyppl require --pipe <your pipeline> --install </path/to/bin>