From c59caac2ee502dfd8b3acb1ca268c597719313f8 Mon Sep 17 00:00:00 2001 From: Eric Wong Date: Mon, 17 Aug 2015 08:19:44 +0000 Subject: public-inbox-{learn,mda}: automatically sync index We'll ignore errors, for now, but should eventually warn or log. And yes, this is a dirty, dirty hack but we'll fix this ASAP tomorrow. --- public-inbox-mda | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) (limited to 'public-inbox-mda') diff --git a/public-inbox-mda b/public-inbox-mda index 4348cb24..46a24a14 100755 --- a/public-inbox-mda +++ b/public-inbox-mda @@ -47,6 +47,11 @@ if (PublicInbox::MDA->precheck($filter, $dst->{address}) && my ($name, $email, $date) = PublicInbox::MDA->author_info($msg); + + END { + search_index_sync($main_repo) if ($? == 0); + }; + local $ENV{GIT_AUTHOR_NAME} = $name; local $ENV{GIT_AUTHOR_EMAIL} = $email; local $ENV{GIT_AUTHOR_DATE} = $date; @@ -79,3 +84,15 @@ sub do_spamc { return ($@ || $? || !defined($$out) || length($$out) == 0) ? 0 : 1; } + +sub search_index_sync { + my ($git_dir) = @_; + eval { + require PublicInbox::Search; + require PublicInbox::GitCatFile; + my $git = PublicInbox::GitCatFile->new($git_dir); + umask 0022; # XXX FIXME use git config core.sharedRepository + my $s = PublicInbox::Search->new($git_dir, 1); + $s->index_sync($git); + }; +} -- cgit v1.2.3-24-ge0c7