Introduction
collective.recipe.rsync is a zc.buildout recipe that copies files between two places via the rsync program.
It was originally created to copy a Data.fs file between two Plone environments (from production to development). But you can use it to copy any file or set of files; e.g. ZODB blob files, and so on.
Installation
Add a section to your buildout.cfg file, e.g. filestorage:
[buildout]
parts =
...
filestorage
[filestorage]
recipe = collective.recipe.rsync
source = aclark@aclark.net:/srv/aclark/var/filestorage/Data.fs
target = var/filestorage/Data.fs
Run buildout; you should see:
Running rsync... rsync -av --partial --progress aclark@aclark.net:/srv/aclark/var/filestorage/Data.fs var/filestorage/Data.fs this may take a while! ...
Specify alternate SSH port
Optionally, you may specify an alternate SSH port for rsync to use:
[filestorage] recipe = collective.recipe.rsync source = aclark@aclark.net:/srv/aclark/var/filestorage/Data.fs target = var/filestorage/Data.fs port = 22001
Run buildout; you should see:
Running rsync... rsync -e 'ssh -p 22001' -av --partial --progress aclark@aclark.net:/srv/aclark/var/filestorage/Data.fs var/filestorage/Data.fs this may take a while! ...
Create a script
Optionally, you may create a rsync script to execute later. Just configure script = true like so:
[sample] recipe = collective.recipe.rsync source = sample_input.txt target = sample_input_copy.txt script = true
Run buildout; you should see:
$ bin/buildout ... Installing sample. Generated script '/Users/aclark/Developer/collective/collective.recipe.rsync/bin/rsync-sample'.
Notice that rsync is no longer executed when you run buildout. You may now run the rsync script whenever you like:
$ bin/rsync-sample ... Running rsync... rsync -e 'ssh -p None' -av --partial --progress sample_input.txt sample_input_copy.txt this may take a while! ...
Further, you may now execute an rsync script automatically via cron (see: http://pypi.python.org/pypi/z3c.recipe.usercrontab).
Example
Here are the contents of a sample database.cfg file; this example demonstrates how to copy a Data.fs file and var/blobstorage files:
[buildout]
extends = buildout.cfg
parts +=
filestorage
blobstorage
[filestorage]
recipe = collective.recipe.rsync
source = aclark.net:/srv/aclark_net_website/var/filestorage/Data.fs
target = var/filestorage/Data.fs
[blobstorage]
recipe = collective.recipe.rsync
source = aclark.net:/srv/aclark_net_website/var/blobstorage/
target = var/blobstorage
Contact
Questions/comments/concerns? Please e-mail: aclark@aclark.net.
Changelog
1.7 (2011-01-21)
Doc fixes
Make script name based on section name
Support more than one script in the same buildout
1.6 (2011-01-20)
Add script option
Generates bin/rsync script
Disables rsync during buildout execution
Facilitates creation of scheduled rsyncs via cron
1.5 (2011-01-10)
Doc fixes
Add a note about UNIX compat only
1.4 (2011-01-10)
Support alternate ssh port parameter in recipe section. This allows collective.recipe.rsync to execute rsync with: -e ‘ssh <port>’, which facilitates copying over non-standard ssh ports.
1.3 (2010-12-19)
Fix docs
1.2 (2010-12-19)
Fix docs
Add new test harness
Clean up package
1.1 (2010-11-05)
Modified output to include rsync command line being executed
1.0 (2010-02-28)
Rename package from collective.recipe.rsync_datafs to collective.recipe.rsync
0.1 (2009-08-26)
Created recipe with ZopeSkel
Metadata
Release files for collective.recipe.rsync 1.7
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| collective.recipe.rsync-1.7.zip | 14.9 kB | Without provenance | Details |
Release files / collective.recipe.rsync-1.7.zip
| Download URL | collective.recipe.rsync-1.7.zip |
|---|---|
| Size | 14.9 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
e5dc74ad92cf00098ebe074f638022a20002b5a31f10d68344003fb64030eae6
|
|
BLAKE2b-256 checksum How to use checksums |
675533542b3926e9f235fe78d5aad682df1a849602969ca582b303df27051ebf
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
Security for collective.recipe.rsync 1.7
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.