X-Git-Url: https://ruin.nu/git/?a=blobdiff_plain;f=scripts%2Ffetchdumps.pl;h=44a8d411eb7f00270ccb5c86545a78e70b61a67e;hb=fe92f95649f91029d18ec050252382332fe0fb96;hp=efd124afc154c7688472c4e6219dab2ecace08e0;hpb=c643b311c8f134a59625192b900aa28b3f12d4f1;p=ndwebbie.git diff --git a/scripts/fetchdumps.pl b/scripts/fetchdumps.pl index efd124a..44a8d41 100755 --- a/scripts/fetchdumps.pl +++ b/scripts/fetchdumps.pl @@ -27,17 +27,11 @@ use DBD::Pg qw(:pg_types); use LWP::Simple; -$0 =~ /(.*\/)[^\/]/; -my $dir = $1; -our $dbh; -for my $file ("/home/whale/db.pl") -{ - unless (my $return = do $file){ - warn "couldn't parse $file: $@" if $@; - warn "couldn't do $file: $!" unless defined $return; - warn "couldn't run $file" unless $return; - } -} +use lib qw{/var/www/ndawn/}; +use ND::DB; + +our $dbh = ND::DB::DB(); + $dbh->do("SET CLIENT_ENCODING TO 'LATIN1';"); my $insert = $dbh->prepare("INSERT INTO dumps(tick,type,modified,dump) VALUES(?,?,?,?)"); @@ -48,7 +42,7 @@ for my $type ("planet","alliance","galaxy"){ $select->execute($type,$head[2]); unless ($select->fetchrow){ my $file = get("http://game.planetarion.com/botfiles/${type}_listing.txt"); - if ($file =~ /Tick: (\d+)/){ + if (defined $file && $file =~ /Tick: (\d+)/){ $updated = $1; $insert->execute($1,$type,$head[2],$file); } @@ -56,10 +50,13 @@ for my $type ("planet","alliance","galaxy"){ $select->finish; } -if ($updated){ - `${dir}parsedumps.pl $updated`; - `${dir}ndrank.pl`; - $dbh->do("UPDATE misc SET value = ? WHERE id = 'TICK'", undef, $updated); +if ($updated > 36){ + `/var/www/ndawn/scripts/parsealliances.pl $updated`; + `/var/www/ndawn/scripts/parseplanets.pl $updated`; + `/var/www/ndawn/scripts/parsegalaxies.pl $updated`; + `/var/www/ndawn/scripts/ndrank.pl`; + $dbh->do(q{UPDATE misc SET value = ? WHERE id = 'TICK'}, undef, $updated); + $dbh->do(q{VACUUM ANALYZE}); }