refuse snapshots older than 10 days
authorAndrew Dunstan <andrew@dunslane.net>
Fri, 15 Oct 2010 20:47:12 +0000 (20:47 +0000)
committerAndrew Dunstan <andrew@dunslane.net>
Fri, 15 Oct 2010 20:47:12 +0000 (20:47 +0000)
cgi-bin/pgstatus.pl

index c1da0a96fc80f95f0a0eed4b1648e70730621646..f951aee02ad2afc21fd5467658132e25d6df1cdd 100755 (executable)
@@ -19,6 +19,7 @@ use DBD::Pg;
 use Data::Dumper;
 use Mail::Send;
 use Safe;
 use Data::Dumper;
 use Mail::Send;
 use Safe;
+use Time::ParseDate;
 
 require "$ENV{BFConfDir}/BuildFarmWeb.pl";
 
 
 require "$ENV{BFConfDir}/BuildFarmWeb.pl";
 
@@ -150,6 +151,19 @@ if ($calc_sig ne $sig && $calc_sig2 ne $sig)
 map {tr/$@/+=/; $_ = decode_base64($_); } 
     ($log, $conf,$changed_this_run,$changed_since_success,$log_archive);
 
 map {tr/$@/+=/; $_ = decode_base64($_); } 
     ($log, $conf,$changed_this_run,$changed_since_success,$log_archive);
 
+
+if ($log =~/Last file mtime in snapshot: (.*)/)
+{
+    my $snaptime = parsedate($1);
+    if ($snaptime < (time - (10 * 86400)))
+    {
+       print "Status: 493 snapshot too old: $1\nContent-Type: text/plain\n\n";
+       print "snapshot to old: $1\n";
+       $db->disconnect;
+       exit;   
+    }
+}
+
 ($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst) = gmtime($ts);
 $year += 1900; $mon +=1;
 my $dbdate=
 ($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst) = gmtime($ts);
 $year += 1900; $mon +=1;
 my $dbdate=