projects
/
cloudstore.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
better check of md5sum files
[cloudstore.git]
/
rsync-piper.pl
diff --git
a/rsync-piper.pl
b/rsync-piper.pl
index
cdb23a2
..
9979c23
100755
(executable)
--- a/
rsync-piper.pl
+++ b/
rsync-piper.pl
@@
-49,7
+49,7
@@
my @transfer_names = map { ( split(/:/,$_,3) )[0] } @transfer;
my $transfer_log = join('|',map { ( split(/:/,$_,3) )[1] } @transfer );
if ( $ENV{SQL} ) {
my $transfer_log = join('|',map { ( split(/:/,$_,3) )[1] } @transfer );
if ( $ENV{SQL} ) {
-
print
"CREATE TABLE rsync_transfer (\n\t",
+
warn
"CREATE TABLE rsync_transfer (\n\t",
join(",\n\t", map { my @m = split(/:/,$_,3); "$m[0] $m[2]" } @transfer),
"\n);\n";
exit 1;
join(",\n\t", map { my @m = split(/:/,$_,3); "$m[0] $m[2]" } @transfer),
"\n);\n";
exit 1;
@@
-87,6
+87,9
@@
strict modes = no
#pre-xfer exec = /srv/cloudstore/rsync-xfer-trigger.pl
#post-xfer exec = /srv/cloudstore/rsync-xfer-trigger.pl
#pre-xfer exec = /srv/cloudstore/rsync-xfer-trigger.pl
#post-xfer exec = /srv/cloudstore/rsync-xfer-trigger.pl
+# inplace breaks update of deduped files
+refuse options = inplace
+
};
open(my $p, '<', '/var/lib/extrausers/passwd');
};
open(my $p, '<', '/var/lib/extrausers/passwd');
@@
-95,6
+98,12
@@
while(<$p>) {
my ( $login, undef, $uid, $gid, $email, $path, $shell ) = split(/:/,$_,7);
my ( $login, undef, $uid, $gid, $email, $path, $shell ) = split(/:/,$_,7);
+ if ( -d $path && -f "$path/.secrets" && ! -e "$path/.meta/secrets" ) {
+ $store->api->mkbasepath( "$path/.meta/secrets" );
+ rename "$path/.secrets", "$path/.meta/secrets";
+ warn "UPGRADE $login rsync secrets location\n";
+ }
+
if ( -d $path && -f "$path/.meta/secrets" ) {
my @secrets = map { chomp; $_ } read_file "$path/.meta/secrets";
my $auth_users = join(', ', map { s/:.+$//; $_ } @secrets );
if ( -d $path && -f "$path/.meta/secrets" ) {
my @secrets = map { chomp; $_ } read_file "$path/.meta/secrets";
my $auth_users = join(', ', map { s/:.+$//; $_ } @secrets );
@@
-116,7
+125,7
@@
while(<$p>) {
__RSYNC_MODULE__
__RSYNC_MODULE__
-
print
"INFO: added $login = $auth_users\n";
+
warn
"INFO: added $login = $auth_users\n";
} else {
warn "skipped $login: $!";
} else {
warn "skipped $login: $!";
@@
-174,7
+183,7
@@
sub REAPER {
$SIG{CHLD} = \&REAPER;
$SIG{CHLD} = \&REAPER;
-if ( ! -e $pid_file ) {
+if ( ! -e $pid_file
|| ! kill( 0, rsync_running_pid )
) {
my $exec = "$rsync --daemon --config $cfg_file --no-detach --port=$port";
warn "START $exec\n";
my $exec = "$rsync --daemon --config $cfg_file --no-detach --port=$port";
warn "START $exec\n";