Daniel Poelzleithner
1b7bf7577f
do not export inhert functions
2022-06-03 06:45:38 +02:00
Daniel Poelzleithner
075d64a069
Implement batchSizeLimit for rsync based transfers
...
If the batchSizeLimit is set, only files lower then this limit will
be grouped in one rsync transfer.
Each file larger then this limit will spawn their own transfer process.
This will cause large files to no longer block small file transfers under the
circumstance the maxProcess limit on the sync is larger then 1
A very optimized, very secure transfer configuration based on a
pool of ssh connection looks like this:
```
sync {
default.rsync,
tunnel = tunnel {
command = {"ssh", "-N", "-L", "localhost:${localport}:localhost:873", "user@targetmachine"},
mode = "pool",
parallel = 2,
},
source = "/tmp/src",
target = "rsync://localhost:${localport}/test",
delay = 5,
batchSizeLimit = 1024 * 1024 * 30,
maxProcesses = 4,
rsync = {
verbose = true,
inplace = true,
}
}
```
If you configure remote ssh configuration only allows portforwarding and your rsync daemon
is configured correctly, you can very securely transfer data without giving shell access.
2022-06-03 06:45:38 +02:00
Daniel Poelzleithner
4a0896f58f
fix logic error in alarm compare
2022-06-03 06:45:38 +02:00
Daniel Poelzleithner
6d9164a29a
Fix wrong alarm selection
2022-06-03 06:45:38 +02:00
Daniel Poelzleithner
ff84a35d4d
Finish full sync cron trigger
2022-06-03 06:45:38 +02:00
Daniel Poelzleithner
9ec4f42888
Only check Tunnels if there is at least one tunnel defined
2022-06-03 06:45:38 +02:00
Daniel Poelzleithner
95f8ea67dd
Log source of next alarm as well
2022-06-03 06:45:38 +02:00
Daniel Poelzleithner
c8fbe955fe
Add debug functions and timestamp2string helpers
2022-06-03 06:45:38 +02:00
Daniel Poelzleithner
58f1991e0b
[WIP] implement crontab full sync
2022-06-03 06:45:38 +02:00
Daniel Poelzleithner
46188f9f60
Implement tunnel pool mode.
...
In this mode, multiple tunnel processes are started and connection a load
balanced on the pool of connections.
Example config:
...
sync {
default.rsync,
tunnel = tunnel {
command = {"ssh", "-N", "-L", "localhost:${localport}:localhost:873", "user@testmachine"},
mode = "pool",
parallel = 2,
},
target = "rsync://localhost:${localport}/test",
...
}
2022-06-03 06:44:02 +02:00
Daniel Poelzleithner
6e60f6b89e
Call runner cleanup method when exiting through error codes
2022-06-03 06:44:02 +02:00
Daniel Poelzleithner
2b9de7d4c3
rename traceback function
2022-06-03 06:44:02 +02:00
Daniel Poelzleithner
fb86124f30
Call user provideable check function
2022-06-03 06:44:01 +02:00
Daniel Poelzleithner
f66b7147fd
Report tunnel status in status file
2022-06-03 06:44:01 +02:00
Daniel Poelzleithner
c543a21162
Add function to substitude commands with placeholders
2022-06-03 06:44:01 +02:00
Daniel Poelzleithner
3d2288dccf
Updates to tunnel logic.
...
Delay before tunnel is considered up.
Working delay if restart fails.
Disabled state.
Kill all tunnel processes on graceful exit
2022-06-03 06:44:01 +02:00
Daniel Poelzleithner
f603d41c6c
bump version
2022-06-03 06:44:01 +02:00
Daniel Poelzleithner
274b2b0416
[WIP] Add tunnel support
2022-06-03 06:44:01 +02:00
Daniel Poelzleithner
e2a27af6e7
use relative sh path
2022-01-12 20:46:41 +01:00
Daniel Poelzleithner
39f2f3a373
Finish -onepass option to exit when all syncs ran sucessfully once
2021-12-10 15:05:30 +01:00
Daniel Poelzleithner
d737c03c03
Merge remote-tracking branch 'origin/pr/541'
2021-12-10 12:51:01 +01:00
Daniel Poelzleithner
3e8aad3b2e
Use sshopts for rsyncssh tests
2021-12-08 18:26:11 +01:00
Daniel Poelzleithner
5b0d266669
add cmd option to pass ssh options
2021-12-08 18:24:13 +01:00
Bernard Gray
a57b80f9c8
make indenting consistent
2018-12-06 08:41:53 +11:00
Bernard Gray
188b691bea
add onepass option to exit after initial sync
2018-12-05 17:05:18 +11:00
Axel Kittenberger
99b6b18ac2
fixing loadstring() Lua5.3 issue
2018-03-09 10:42:10 +01:00
Axel Kittenberger
4bc456b544
preparing 2.2.3
2018-03-09 10:13:29 +01:00
Axel Kittenberger
faa582e259
cleanups
2018-03-01 15:19:30 +01:00
Axel Kittenberger
ba52ee1a6f
cleanups
2018-03-01 15:08:26 +01:00
Axel Kittenberger
a78f239fa2
apply filters before inotify watching dirs, actually filter events
2018-03-01 14:14:28 +01:00
Axel Kittenberger
465e173983
cleanups
2018-03-01 11:26:12 +01:00
Axel Kittenberger
1e0d867f80
adding inclusion filters
2018-02-27 17:14:36 +01:00
Axel Kittenberger
d72a59e70f
do not append a '/' to targets when there it ends with a ':'
2018-02-27 10:09:28 +01:00
Axel Kittenberger
ea068b4014
reverting to rsync filter useage, until rysnc bug is fixed
2017-02-16 12:17:37 +01:00
Axel Kittenberger
785a7dd503
fixing again setting with new delay objects, cleanups
2017-02-06 17:00:39 +01:00
Axel Kittenberger
544f6066b7
write pid of forked process
2017-01-09 13:13:05 +01:00
Axel Kittenberger
3f78514273
fix exclusion tests
2017-01-09 11:43:23 +01:00
Axel Kittenberger
288f09ad01
a
2017-01-09 11:14:23 +01:00
Axel Kittenberger
e21a2184ba
preparing 2.2.1
2017-01-05 11:54:29 +01:00
Axel Kittenberger
0c5e2c707e
new rsync control is no longer recursive, fixing excludes
2017-01-05 11:31:29 +01:00
Axel Kittenberger
b7c4fe437c
typo
2017-01-05 10:29:38 +01:00
Axel Kittenberger
ccae4ac142
trying delete-missing-args
2017-01-05 10:02:16 +01:00
Axel Kittenberger
12d4f43d0f
realtive paths do not start with a slash
2017-01-04 11:24:55 +01:00
Axel Kittenberger
c08719ce00
Preparing 2.2.0, removing manpage from 'clean' target
2017-01-04 10:59:01 +01:00
Axel Kittenberger
4909dd3b2c
fixing racecondition in default.rsyncssh
2017-01-03 15:30:13 +01:00
Axel Kittenberger
83c6436e84
typo
2016-12-22 15:15:17 +01:00
Axel Kittenberger
16919a893e
do not replace active delays
2016-12-22 14:59:18 +01:00
Axel Kittenberger
62923459f4
Actually stack when toDelete,stack
2016-12-22 13:55:59 +01:00
Axel Kittenberger
98c83a7fbf
typo
2016-12-21 16:38:04 +01:00
Axel Kittenberger
8e1a85a12d
Splitted Delay combination log from logging about it.
2016-12-21 16:29:29 +01:00