BioX-Workflow-Plugin-Drake
view release on metacpan or search on metacpan
NAME
BioX::Workflow::Plugin::Drake - A very opinionated template based
bioinformatics workflow writer for Drake.
SYNOPSIS
The main documentation for this module is at BioX::Workflow. This
module extends Workflow in order to add functionality for outputing
workflows in drake format.
biox-workflow.pl --workflow workflow.yml > workflow.drake
drake --workflow workflow.drake #with other functionality such as --jobs for asynchronous output, etc.
List your plugins in your workflow.yml file
---
plugins:
- Drake
global:
- indir: /home/user/gemini
- outdir: /home/user/gemini/gemini-wrapper
- file_rule: (.vcf)$|(.vcf.gz)$
- infile:
- min: 1 ##IF USING MIN
#So On and So Forth
More information about Drake can be found here
https://github.com/Factual/drake.
Default Variables
BioX::Workflow::Plugin::Drake assumes your INPUT/OUTPUT and
indir/outdirs are linked.
This means the output from step1 is the input for step2.
You can override this behavior by either declaring any of these values,
or in the global variables set auto_input: 0, disable automatic
indir/outdir naming with auto_name: 0, and disable automatically naming
outdirectories by rule names with enforce_struct: 0.
Example
workflow.yml
---
plugins:
- Drake
global:
- indir: /home/user/workflow
- outdir: /home/user/workflow/output
- file_rule: (.csv)$
rules:
- backup:
local:
- INPUT: "{$self->indir}/{$sample}.csv"
- OUTPUT: "{$self->outdir}/{$sample}.csv"
- thing: "other thing"
process: |
cp $INPUT $OUTPUT
- grep_VARA:
local:
- OUTPUT: "{$self->outdir}/{$sample}.grep_VARA.csv"
process: |
echo "Working on {$self->{indir}}/{$sample.csv}"
grep -i "VARA" {$self->indir}/{$sample}.csv >> {$self->outdir}/{$sample}.grep_VARA.csv \
|| touch {$self->OUTPUT}
- grep_VARB:
local:
- OUTPUT: "{$self->outdir}/{$sample}.grep_VARA.grep_VARB.csv"
process: |
grep -i "VARB" {$self->indir}/{$sample}.grep_VARA.csv >> {$self->outdir}/{$sample}.grep_VARA.grep_VARB.csv || touch {$self->OUTPUT}
( run in 2.219 seconds using v1.01-cache-2.11-cpan-39bf76dae61 )