[Midnightbsd-cvs] mports: magus/master: add nuke_internals.pl and top_blockers.pl
ctriv at midnightbsd.org
ctriv at midnightbsd.org
Tue Apr 22 02:54:50 EDT 2008
Log Message:
-----------
add nuke_internals.pl and top_blockers.pl
Added Files:
-----------
mports/Tools/magus/master:
nuke_internals.pl (r1.1)
top_blockers.pl (r1.1)
-------------- next part --------------
--- /dev/null
+++ Tools/magus/master/nuke_internals.pl
@@ -0,0 +1,17 @@
+#!/usr/local/bin/perl
+#
+# $MidnightBSD: mports/Tools/magus/master/nuke_internals.pl,v 1.1 2008/04/22 06:54:49 ctriv Exp $
+#
+use strict;
+use warnings;
+use lib qw(/usr/mports/Tools/lib);
+
+use Magus;
+
+foreach my $run (@ARGV) {
+ my $ports = Magus::Port->search(run => $run, status => 'internal');
+
+ while (my $port = $ports->next) {
+ $port->reset;
+ }
+}
\ No newline at end of file
--- /dev/null
+++ Tools/magus/master/top_blockers.pl
@@ -0,0 +1,44 @@
+#!/usr/local/bin/perl
+#
+# $MidnightBSD: mports/Tools/magus/master/top_blockers.pl,v 1.1 2008/04/22 06:54:49 ctriv Exp $
+#
+use strict;
+use warnings;
+use lib qw(/usr/mports/Tools/lib);
+
+use Magus;
+
+my $run = shift || die "Usage: $0 <run ID>\n";
+my %blocking;
+
+my $ports = Magus::Port->search(run => $run, status => 'untested');
+
+$|++;
+
+while (my $port = $ports->next) {
+ print "$port... ";
+ note_failures($port, \%blocking);
+ print "done\n";
+}
+
+print '-' x 79, "\n";
+
+foreach my $port (sort { $blocking{$b} <=> $blocking{$a} } keys %blocking) {
+ print "$port: $blocking{$port}\n";
+}
+
+sub note_failures {
+ my ($port, $blocking) = @_;
+
+ my @depends = $port->depends;
+
+ $blocking->{$_}++ for grep { $_->status eq 'fail' || $_->status eq 'skip' } @depends;
+
+ note_failures($_, $blocking)
+ for grep { $_->status eq 'untested' } @depends;
+}
+
+
+
+
+
More information about the Midnightbsd-cvs
mailing list