File Coverage

blib/lib/BioX/Workflow/Command.pm
Criterion Covered Total %
statement 8 8 100.0
branch n/a
condition n/a
subroutine 3 3 100.0
pod n/a
total 11 11 100.0


line stmt bran cond sub pod time code
1             package BioX::Workflow::Command;
2              
3 2     2   690136 use v5.10;
  2         6  
4             our $VERSION = '2.2.2';
5              
6 2     2   564 use MooseX::App qw(Color);
  2         1266152  
  2         9  
7              
8             app_strict 0;
9              
10             with 'BioX::Workflow::Command::Utils::Log';
11             with 'BioSAILs::Utils::Plugin';
12             with 'BioSAILs::Utils::LoadConfigs';
13              
14             option '+config_base' => (
15             is => 'rw',
16             default => '.bioxworkflow',
17             );
18              
19             sub BUILD {}
20              
21             after 'BUILD' => sub {
22             my $self = shift;
23              
24             return unless $self->plugins;
25              
26             $self->app_load_plugins( $self->plugins );
27             $self->parse_plugin_opts( $self->plugins_opts );
28              
29             ##Must reload the configs to get any options from the plugins
30             if ( $self->has_config_files ) {
31             $self->load_configs;
32             }
33             };
34              
35              
36             #This class is not compatible with namespace::autoclean...
37 2     2   2155050 no Moose;
  2         4  
  2         11  
38             __PACKAGE__->meta->make_immutable;
39              
40             1;
41              
42             __END__
43              
44             =encoding utf-8
45              
46             =head1 NAME
47              
48             BioX::Workflow::Command - Opinionated Bioinformatics Genomics Workflow Creator
49              
50             =head1 SYNOPSIS
51              
52             biox run -w workflow.yml
53             biox -h
54              
55             =head1 documentation
56              
57             Full documentation is available at gitbooks. L<Documentation |
58             https://biosails.gitbooks.io/biox-workflow-command-docs/content/>
59              
60             =head1 Quick Start
61              
62             =head2 Get Help
63              
64             #Global Help
65             biox --help
66             biox-workflow.pl --help
67             #Help Per Command
68             biox run --help
69              
70             =head2 Run a Workflow
71              
72             #Previously biox-workflow.pl --workflow workflow.yaml
73             biox run -w workflow.yml #or --workflow
74             biox-workflow.pl run --workflow workflow.yml
75              
76             =head2 Run a Workflow with make like utilities
77              
78              
79             Using the option --auto_deps will create #HPC deps based on your INPUT/OUTPUTs -
80             use this with caution. It will only work correctly if INPUT/OUTPUT is complete
81             and accurate.
82              
83             biox run --workflow workflow.yml --auto_deps
84              
85              
86             =head2 Create a new workflow
87              
88             This creates a new workflow with rules rule1, rule2, rule3, with a few variables
89             to help get you started.
90              
91             biox new -w workflow.yml --rules rule1,rule2,rule3
92              
93             =head2 Add a new rule to a workflow
94              
95             Add new rules to an existing workflow.
96              
97             biox add -w workflow.yml --rules rule4
98              
99             =head2 Check the status of files in your workflow
100              
101             You must have defined INPUT/OUTPUTs to make use of this rule. If you do, biox
102             will output a table with information about your files.
103              
104             biox stats -w workflow.yml
105              
106             =head1 DESCRIPTION
107              
108             BioX::Workflow::Command is a templating system for creating Bioinformatics Workflows.
109              
110             =head1 AUTHOR
111              
112             Jillian Rowe E<lt>jillian.e.rowe@gmail.comE<gt>
113              
114             =head1 COPYRIGHT
115              
116             Copyright 2017- Jillian Rowe
117              
118             =head1 LICENSE
119              
120             This library is free software; you can redistribute it and/or modify
121             it under the same terms as Perl itself.
122              
123             =head1 Acknowledgements
124              
125             As of version 0.03:
126              
127             This modules continuing development is supported
128             by NYU Abu Dhabi in the Center for Genomics and
129             Systems Biology. With approval from NYUAD, this
130             information was generalized and put on github,
131             for which the authors would like to express their
132             gratitude.
133              
134             Before version 0.03
135              
136             This module was originally developed at and for Weill Cornell Medical
137             College in Qatar within ITS Advanced Computing Team. With approval from
138             WCMC-Q, this information was generalized and put on github, for which
139             the authors would like to express their gratitude.
140              
141              
142             =head1 SEE ALSO
143              
144             =cut