BioX::Workflow::SpecialVars
Variables that BioX::Workflow treats as special.
Directories - indir, outdir are looped. The indir of one rule is the outdir of the previous rule
Files - INPUT, OUTPUT are also looped. The INPUT of one rule is the OUTPUT of the previous.
INPUT and OUTPUT are used by the BioX::Workflow::Plugin::Drake and BioX::Workflow::Plugin::FileEixsts plugins.
Variables
auto_name
Auto_name - Create outdirectory based on rulename
global: - outdir: /home/user/workflow/processed rule: normalize: process: dostuff {$self->indir}/{$sample}.in >> {$self->outdir}/$sample.out analyse: process: dostuff {$self->indir}/{$sample}.in >> {$self->outdir}/$sample.out
Would create your directory structure /home/user/workflow/processed/normalize (if it doesn't exist)
In addition each indir is the outdir of the previous rule
The indir of analyse (though not specified) is normalize.
auto_input
This is similar to the auto_name function in the BioX::Workflow. Instead this says each INPUT should be the previous OUTPUT.
create_outdir
indir outdir
The initial indir is where samples are found
All output is written relative to the outdir
INPUT OUTPUT
Special variables that can have input/output
These variables are also used in BioX::Workflow::Plugin::Drake
Subroutines
OUTPUT_to_INPUT
If we are using auto_input chain INPUT/OUTPUT
make_outdir
Set initial indir and outdir
reset_special_vars
For each sample the process is interpolated
{$sample}.csv -> Sample_A.csv
We need to set it back to the original for the following rule