[Collab-qa-commits] r842 - qabuildstat/buildagent

goneri at alioth.debian.org goneri at alioth.debian.org
Mon Apr 28 21:01:27 UTC 2008


Author: goneri
Date: 2008-04-28 21:01:26 +0000 (Mon, 28 Apr 2008)
New Revision: 842

Modified:
   qabuildstat/buildagent/qabuildstat-buildagent
Log:
check for the pbuilder tarball integrity and print pbuilder return code

Modified: qabuildstat/buildagent/qabuildstat-buildagent
===================================================================
--- qabuildstat/buildagent/qabuildstat-buildagent	2008-04-28 20:31:25 UTC (rev 841)
+++ qabuildstat/buildagent/qabuildstat-buildagent	2008-04-28 21:01:26 UTC (rev 842)
@@ -73,7 +73,7 @@
     foreach (`ps --no-headers --ppid $mainpid -o pid`) {
         next unless /(\d+)/;
         my $pid = $1;
-        killThemAll($pid);
+        killThemAll($pid, $signal);
         kill ($pid, $signal);
         print "kill ($pid, $signal)\n";
     }
@@ -215,6 +215,14 @@
   my $retry = shift;
   $retry = 1 unless $retry;
 
+    if (!(time % 300)) {
+        system ("gzip -t $pbuildertgz");
+        if (($? >> 8)!=0) {
+            print "pbuildertgz is corrupted, removing it\n";
+            unlink $pbuildertgz 
+        }
+    }
+
   my $pdebuildparam = "--debootstrap debootstrap --mirror ".$debmirror." --buildplace $pbuilderplace --othermirror 'deb ".$debmirror." $distro main contrib non-free' --distribution $distro --basetgz $pbuildertgz --debootstrap debootstrap";
   if (-s $pbuildertgz) {
     my $sb = stat($pbuildertgz);
@@ -243,7 +251,9 @@
   if (! -s $pbuildertgz) {
     my $timer = 10*$retry;
     $timer = 180 if $timer > 180;
-    print "Failed to create a pbuilder tarball, will sleep for $timer minutes and retry ...\n";
+    print "Failed to create a p
+    
+    builder tarball, will sleep for $timer minutes and retry ...\n";
     sleep ($timer*60);
     upgradeChroot($retry+1);
   }
@@ -352,6 +362,9 @@
   my $dsc_localpath = $threadworkplace.'/'.basename($report->{dsc});
 
   `cd $threadworkplace/$tarballdir; pbuilder --build --buildresult $threadbuildarea --buildplace $pbuilderplace --aptcache $aptcachedir --distribution $distro --basetgz $pbuilderplace/$distro.tar.gz --timeout 10h $dsc_localpath >$threadbuildarea/build.log.tmp 2>&1`;
+  if (($? >> 8)!=0) {
+      print "DEBUG: PBUILDER RETURNED AN ERROR CODE\n";
+  }
   $report->{'stamp_build-end'} = time;
 
   sendReport($report, $threadbuildarea);




More information about the Collab-qa-commits mailing list