33 lines
761 B
Perl
Executable file
33 lines
761 B
Perl
Executable file
#!/usr/bin/env perl
|
|
|
|
use 5.24.0;
|
|
|
|
use strict;
|
|
use warnings;
|
|
use lib './lib';
|
|
|
|
use Module;
|
|
use Dist;
|
|
use Storable qw/retrieve/;
|
|
use Data::Dumper;
|
|
|
|
my $data = retrieve 'everything.stor';
|
|
|
|
my @failed_list = grep {my $s=$data->{jobstatus}{$_}{status}; $s ne 'success' && $s ne 'inc failed'} grep {defined $_ && $_ ne ''} keys($data->{jobstatus}->%*);
|
|
|
|
my %mods;
|
|
|
|
$|++;
|
|
|
|
LOOP: for my $mod ($data->{modules}->@*) {
|
|
my $status = $data->{jobstatus}{$mod}{status} // "";
|
|
|
|
if ($status ne 'success' && $status ne 'inc failed') {
|
|
print STDERR "DEP Checking $mod\n";
|
|
my $module = Module->new_module($mod);
|
|
my @dependedonby = $module->get_failed_descendants(\@failed_list);
|
|
|
|
$mods{$mod} = 0+@dependedonby;
|
|
printf "%05d %s\n", $mods{$mod}, $mod;
|
|
}
|
|
}
|