[Collab-qa-commits] r616 - svnbuildstat/trunk/script

goneri-guest at alioth.debian.org goneri-guest at alioth.debian.org
Tue Dec 25 19:35:57 UTC 2007


Author: goneri-guest
Date: 2007-12-25 19:35:57 +0000 (Tue, 25 Dec 2007)
New Revision: 616

Modified:
   svnbuildstat/trunk/script/svnbuildstat_agent.pl
Log:
The new communication layer
Doesn't work yet


Modified: svnbuildstat/trunk/script/svnbuildstat_agent.pl
===================================================================
--- svnbuildstat/trunk/script/svnbuildstat_agent.pl	2007-12-21 09:50:05 UTC (rev 615)
+++ svnbuildstat/trunk/script/svnbuildstat_agent.pl	2007-12-25 19:35:57 UTC (rev 616)
@@ -42,8 +42,9 @@
 my $aptcachedir = $vardir."/aptcache";
 my $debmirror = "http://ftp.fr.debian.org/debian/";
 my $buildadminaddr = "Gonéri Le Bouder <goneri\@rulezlan.org>";
-my $server = "http://localhost:3000";
 my $pbuildertgz = "$pbuilderplace/$distro.tar.gz";
+my $server = "http://wawax.info:3000";
+my $keeptmpdir = 1;
 
 die unless $maxjobs =~ /^\d+$/;
 
@@ -52,7 +53,7 @@
 
 die "please create: `".$vardir unless -d $vardir;
 # TODO check for running script in background
-# Purge 
+# Purge
 if (-d $workplace) {`rm -r $workplace`;}
 if (-d $buildarea) {`rm -r $buildarea`;}
 if (-d $tmpdir) {`rm -r $tmpdir`;}
@@ -82,7 +83,7 @@
   my $ua = new LWP::UserAgent;
 
  
-  my $response = $ua->request(POST $server.'/builds/upload',
+  my $response = $ua->request(POST $server.'/controls/sendFile',
     Content_Type => 'form-data',
     Content => ['file' => [ $file, basename($file) ]]) or die "Upload failed\n";
  
@@ -107,9 +108,16 @@
   my $p;
   my $report = {};
 
-  my $serverOrder = LWP::Simple::get($server.'/packages/tobuildv3/'.$arch);
-  return unless $serverOrder;
-  foreach (split $/, $serverOrder) {
+  my $ua  = LWP::UserAgent->new();
+  my $req = POST $server."/controls/getOrder", Content_Type => 'form-data',
+  Content      => [
+  submit => 1,
+  content => "version=1\nchecks=builder\narch=$arch\n",
+  ];
+  my $response = $ua->request($req);
+  return unless $response->is_success();
+
+  foreach (split $/, $response->content) {
     chomp;
 
     $report->{$1} = $2 if (/(.*)=(.*)/);
@@ -261,7 +269,7 @@
 
   sendReport($report, $threadbuildarea);
 
-  `rm -rf $threadworkplace $threadbuildarea`;
+  `rm -rf $threadworkplace $threadbuildarea` unless $keeptmpdir;
 
   1;
 }
@@ -269,7 +277,7 @@
 while (sleep 1) { # TODO replace by a more important values
 
   if (isFull($workplace)||isFull($buildarea)) {
-    `rm -f $aptcachedir/*`;
+    `rm -f $aptcachedir/*` unless $keeptmpdir;
     print "disk is full\n";
     if (%job&&(isFull($workplace)||isFull($buildarea))) {
       print "Emergency clean up\n";
@@ -286,7 +294,7 @@
       sleep 5;
     }
     if (! -d "/proc/".$pid) {
-      `rm -rf $workplace/$pid $buildarea/$pid`;
+      `rm -rf $workplace/$pid $buildarea/$pid` unless $keeptmpdir;
       delete ($job{$pid});
     }
     waitpid($pid,WNOHANG);




More information about the Collab-qa-commits mailing list