X-Git-Url: http://git.vanrenterghem.biz/git.ikiwiki.info.git/blobdiff_plain/5b818c9f2ac9c9a2d953f29194913036ab26c225..4e860b8717d18bf56a4a61c9a2214f485c20dd90:/IkiWiki/Plugin/rsync.pm?ds=sidebyside

diff --git a/IkiWiki/Plugin/rsync.pm b/IkiWiki/Plugin/rsync.pm
index f14989ff8..1b85ea000 100644
--- a/IkiWiki/Plugin/rsync.pm
+++ b/IkiWiki/Plugin/rsync.pm
@@ -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 => "rendered", id => "rsync", call => \&postrefresh);
+	hook(type => "delete", id => "rsync", call => \&postrefresh);
 }
 
 sub getsetup () {
@@ -18,15 +19,18 @@ sub getsetup () {
 		},
 		rsync_command => {
 			type => "string",
-			example => "rsync -qa --delete . user\@host:/path/to/docroot/ --exclude ikiwiki.cgi",
+			example => "rsync -qa --delete . user\@host:/path/to/docroot/",
 			description => "command to run to sync updated pages",
 			safe => 0,
 			rebuild => 0,
 		},
 }
 
+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) {