[Midnightbsd-cvs] mports: magus.pl: Add task support.

ctriv at midnightbsd.org ctriv at midnightbsd.org
Wed Oct 31 14:04:27 EDT 2007


Log Message:
-----------
Add task support.

Modified Files:
--------------
    mports/Tools/magus/slave:
        magus.pl (r1.6 -> r1.7)

-------------- next part --------------
Index: magus.pl
===================================================================
RCS file: /home/cvs/mports/Tools/magus/slave/magus.pl,v
retrieving revision 1.6
retrieving revision 1.7
diff -LTools/magus/slave/magus.pl -LTools/magus/slave/magus.pl -u -r1.6 -r1.7
--- Tools/magus/slave/magus.pl
+++ Tools/magus/slave/magus.pl
@@ -29,8 +29,6 @@
 # MAINTAINER=   ctriv at MidnightBSD.org
 #
 
-
-
 #
 # todo:	setproctitle
 #	
@@ -48,6 +46,14 @@
 
 $SIG{INT} = sub { report('info', "$$: caught sigint"); die "Caught SIGINT $$\n" };
 
+my @origARGV = @ARGV;
+my $self     = '/usr/mports/Tools/magus/slave/magus.pl';
+
+Magus::Task->set_callbacks(
+  restart => sub { exec($self, @origARGV); },
+  log     => sub { report('info', @_);     }
+);
+
 main();
 
 =head1 magus.pl
@@ -92,6 +98,10 @@
   report('info', "Starting magus on %s (%s)", $Magus::Machine->name, $Magus::Machine->arch);
   
   while (1) {
+    if (my @tasks = Magus::Task->search(machine => $Magus::Machine, completed => 0, started => 0)) {
+      $_->exec for @tasks;
+    }
+  
     $lock = Magus::Lock->get_ready_lock();
     
     if (!$lock) {


More information about the Midnightbsd-cvs mailing list