* [PATCH] public-inbox-watch: support reloading config with SIGHUP
@ 2016-08-11 19:20 7% Eric Wong
0 siblings, 0 replies; 1+ results
From: Eric Wong @ 2016-08-11 19:20 UTC (permalink / raw)
To: meta
This can be useful for adding new lists, as restarting is
expensive (but still non-lossy).
---
script/public-inbox-watch | 11 ++++++++---
1 file changed, 8 insertions(+), 3 deletions(-)
diff --git a/script/public-inbox-watch b/script/public-inbox-watch
index 42ae55a..bb65592 100755
--- a/script/public-inbox-watch
+++ b/script/public-inbox-watch
@@ -5,10 +5,15 @@ use strict;
use warnings;
use PublicInbox::WatchMaildir;
use PublicInbox::Config;
-my $config = PublicInbox::Config->new;
-my $watch_md = PublicInbox::WatchMaildir->new($config);
+my ($config, $watch_md);
+my $reload = sub {
+ $config = PublicInbox::Config->new;
+ $watch_md = PublicInbox::WatchMaildir->new($config);
+};
+$reload->();
if ($watch_md) {
- my $scan = sub { $watch_md->scan };
+ my $scan = sub { $watch_md->scan if $watch_md };
+ $SIG{HUP} = $reload;
$SIG{USR1} = $scan;
$SIG{ALRM} = sub { $SIG{ALRM} = 'DEFAULT'; $scan->() };
alarm(1);
--
EW
^ permalink raw reply related [relevance 7%]
Results 1-1 of 1 | reverse | options above
-- pct% links below jump to the message on this page, permalinks otherwise --
2016-08-11 19:20 7% [PATCH] public-inbox-watch: support reloading config with SIGHUP Eric Wong
Code repositories for project(s) associated with this public inbox
https://80x24.org/public-inbox.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).