File Coverage

blib/lib/Clustericious/Commands.pm
Criterion Covered Total %
statement 15 17 88.2
branch 2 4 50.0
condition 1 3 33.3
subroutine 5 5 100.0
pod 0 1 0.0
total 23 30 76.6


line stmt bran cond sub pod time code
1             package Clustericious::Commands;
2              
3 24     24   5716 use strict;
  24         51  
  24         649  
4 24     24   120 use warnings;
  24         44  
  24         519  
5 24     24   112 use Clustericious::Config;
  24         44  
  24         492  
6 24     24   120 use Mojo::Base 'Mojolicious::Commands';
  24         44  
  24         133  
7              
8             # ABSTRACT: Clustericious command runner
9             our $VERSION = '1.27'; # VERSION
10              
11              
12             has namespaces => sub { [qw/Clustericious::Command Mojolicious::Command/] };
13              
14             has app => sub { Mojo::Server->new->build_app('Clustericious::HelloWorld') };
15              
16             sub start {
17 2     2 0 17337 my $self = shift;
18              
19 2 50 33     11 if($ENV{CLUSTERICIOUS_COMMAND_NAME} && @_ == 0) {
20 0         0 @_ = ($ENV{CLUSTERICIOUS_COMMAND_NAME});
21             }
22              
23 2 50       29 return $self->start_app($ENV{MOJO_APP} => @_) if $ENV{MOJO_APP};
24 0           return $self->new->app->start(@_);
25             }
26              
27             1;
28              
29             __END__
30              
31             =pod
32              
33             =encoding UTF-8
34              
35             =head1 NAME
36              
37             Clustericious::Commands - Clustericious command runner
38              
39             =head1 VERSION
40              
41             version 1.27
42              
43             =head1 SYNOPSIS
44              
45             % yourapp start
46              
47             =head1 DESCRIPTION
48              
49             This class is used by the L<clustericious> command to do its thing.
50             See L<Clustericious::Command> for an overview of Clustericious commands.
51              
52             =head1 SUPER CLASS
53              
54             L<Mojolicious::Commands>
55              
56             =head1 SEE ALSO
57              
58             L<Clustericious::Command>
59              
60             =head1 AUTHOR
61              
62             Original author: Brian Duggan
63              
64             Current maintainer: Graham Ollis E<lt>plicease@cpan.orgE<gt>
65              
66             Contributors:
67              
68             Curt Tilmes
69              
70             Yanick Champoux
71              
72             =head1 COPYRIGHT AND LICENSE
73              
74             This software is copyright (c) 2013 by NASA GSFC.
75              
76             This is free software; you can redistribute it and/or modify it under
77             the same terms as the Perl 5 programming language system itself.
78              
79             =cut