got rid of the postrefresh hook after all
Instead, use the change and delete hooks, and launch rsync if either hook is called.master
parent
5b818c9f2a
commit
a7545978c7
|
@ -7,7 +7,8 @@ use IkiWiki 3.00;
|
|||
|
||||
sub import {
|
||||
hook(type => "getsetup", id => "rsync", call => \&getsetup);
|
||||
hook(type => "postrefresh", id => "rsync", call => \&postrefresh);
|
||||
hook(type => "change", id => "rsync", call => \&postrefresh);
|
||||
hook(type => "delete", id => "rsync", call => \&postrefresh);
|
||||
}
|
||||
|
||||
sub getsetup () {
|
||||
|
@ -25,8 +26,11 @@ sub getsetup () {
|
|||
},
|
||||
}
|
||||
|
||||
my $ran=0;
|
||||
|
||||
sub postrefresh () {
|
||||
if (defined $config{rsync_command}) {
|
||||
if (defined $config{rsync_command} && ! $ran) {
|
||||
$ran=1;
|
||||
chdir($config{destdir}) || error("chdir: $!");
|
||||
system $config{rsync_command};
|
||||
if ($? == -1) {
|
||||
|
|
|
@ -554,7 +554,6 @@ sub refresh () {
|
|||
if (%rendered) {
|
||||
run_hooks(change => sub { shift->(keys %rendered) });
|
||||
}
|
||||
run_hooks(postrefresh => sub { shift->() });
|
||||
}
|
||||
|
||||
sub commandline_render () {
|
||||
|
|
Loading…
Reference in New Issue