Call purge from take_job and finish_job
authorMarius Gavrilescu <marius@ieval.ro>
Fri, 19 Jun 2015 10:59:29 +0000 (13:59 +0300)
committerMarius Gavrilescu <marius@ieval.ro>
Fri, 19 Jun 2015 10:59:29 +0000 (13:59 +0300)
lib/Gruntmaster/Data.pm

index 3b634ca6f3ebf935bf94af74fad46bc6c10c4a28..2468d034562d9226ab10c3a9f5a83bc93d694c7e 100644 (file)
@@ -252,12 +252,17 @@ sub rerun_job {
 sub take_job {
        my ($daemon) = @_;
        my $id = _query(take_job_sth => $daemon)->list;
-       return $id ? db->select(jobs => '*', {id => $id})->hash : undef;
+       return unless $id;
+       purge '/log/';
+       purge "/log/$id";
+       db->select(jobs => '*', {id => $id})->hash
 }
 
 sub finish_job {
        my ($job, $private, %args) = @_;
        db->update(jobs => \%args, {id => $job->{id}});
+       purge '/log/';
+       purge '/log/' . $job->{id};
        return if $private;
        my $status = {
                problem => $job->{problem},
@@ -268,6 +273,7 @@ sub finish_job {
        eval {
                db->insert(problem_status => $status)
        } or db->update(problem_status => $status, {owner => $job->{owner}, problem => $job->{problem}});
+       purge '/us/' . $job->{owner};
 }
 
 my @PURGE_HOSTS = exists $ENV{PURGE_HOSTS} ? split ' ', $ENV{PURGE_HOSTS} : ();
This page took 0.010619 seconds and 4 git commands to generate.