File Coverage

blib/lib/Alien/Build/Plugin/Probe/Override.pm
Criterion Covered Total %
statement 14 28 50.0
branch 0 10 0.0
condition n/a
subroutine 5 7 71.4
pod 1 1 100.0
total 20 46 43.4


line stmt bran cond sub pod time code
1             package Alien::Build::Plugin::Probe::Override;
2              
3 2     2   168072 use strict;
  2         5  
  2         59  
4 2     2   12 use warnings;
  2         4  
  2         52  
5 2     2   43 use 5.008001;
  2         9  
6 2     2   602 use Alien::Build::Plugin;
  2         4682  
  2         15  
7 2     2   668 use Path::Tiny qw( path );
  2         8623  
  2         624  
8              
9             # ABSTRACT: Override on a per-alien basis
10             our $VERSION = '0.01'; # VERSION
11              
12              
13             sub init
14             {
15 0     0 1   my($self, $meta) = @_;
16            
17             $meta->register_hook(
18             override => sub {
19 0     0     my($build) = @_;
20              
21 0 0         if(Alien::Build::rc->can('override'))
22             {
23 0           foreach my $try (qw( stage prefix ))
24             {
25 0           my $class = path($build->install_prop->{$try})->basename;
26 0 0         if($class =~ /^Alien-/)
27             {
28 0           my $override = Alien::Build::rc::override($class);
29 0 0         if($override)
30             {
31 0 0         if($override =~ /^(system|share|default)$/)
32             {
33 0           $build->log("ovveride for $class => $override");
34 0           return $override;
35             }
36             else
37             {
38 0           $build->log("override for $class => $override is not valid");
39             }
40             }
41             }
42             }
43             }
44            
45 0 0         $ENV{ALIEN_INSTALL_TYPE} || '';
46             },
47 0           );
48             }
49              
50             1;
51              
52             __END__