X-Git-Url: http://git.ieval.ro/?p=gruntmaster-daemon.git;a=blobdiff_plain;f=lib%2FGruntmaster%2FDaemon.pm;h=3f4e15a5f2f4acf629a0c660ee7d4228ed5d0abc;hp=1d2f1cfe3dc178e5dc509d9f3215ab5985246b17;hb=064332cd403d5b205c43be0dee53c55ab399e395;hpb=f5e29130f62b7a9dfd13bcfc5ee65359b1010b92 diff --git a/lib/Gruntmaster/Daemon.pm b/lib/Gruntmaster/Daemon.pm index 1d2f1cf..3f4e15a 100644 --- a/lib/Gruntmaster/Daemon.pm +++ b/lib/Gruntmaster/Daemon.pm @@ -4,7 +4,7 @@ use 5.014000; use strict; use warnings; -our $VERSION = '5999-TRIAL'; +our $VERSION = '5999.000_001'; use Gruntmaster::Daemon::Constants qw/ERR/; use Gruntmaster::Daemon::Format qw/prepare_files/; @@ -16,11 +16,14 @@ use Sys::Hostname qw/hostname/; use Time::HiRes qw/time/; use Try::Tiny; use Log::Log4perl qw/get_logger/; +use LWP::UserAgent; use constant PAGE_SIZE => 10; ################################################## +my $ua = LWP::UserAgent->new; + sub safe_can_nodie { my ($type, $sub, $name) = @_; @@ -37,6 +40,12 @@ sub safe_can { safe_can_nodie @_ or get_logger->logdie("No such \l$type: '$name'"); } +sub purge { + return unless $ENV{PURGE_HOST}; + my $req = HTTP::Request->new(PURGE => "http://$ENV{PURGE_HOST}$_[0]"); + $ua->request($req) +} + sub process{ my $job = shift; @@ -112,6 +121,11 @@ sub process{ PUBLISH genpage => "$log/@{[$page - 1]}.html"; PUBLISH genpage => "$log/$page.html"; PUBLISH genpage => "$log/@{[$page + 1]}.html"; + + purge "/$log/job/$job"; + purge "/$log/"; + purge "/$log/st"; + purge "/$log/$_" for $page - 1, $page, $page + 1; } sub got_job{