cloudsync enables simple cloud file-level sync with a variety of cloud providers
Project description
cloudsync README
Python Cloud Synchronization Library
pip install cloudsync
Example:
from cloudsync import CloudSync, CloudSyncProvider
local = CloudSyncProvider("local", path="/usr/home/alice/test", monitor=True)
remote = CloudSyncProvider("gdrive", path="/test-folder")
remote.connect()
sync = CloudSync(local, remote)
sync.start()
with open("/usr/home/alice/test/hello.txt", "w") as f:
f.write("hello")
# give the monitor a second to notice the change
# alternatively we can "poke" the local provider, forcing a sync
time.sleep(1)
sync.wait(timeout=10)
# using no_poke to deliberately trick our sync into *not* knowing about the rename
remote.rename("/test-folder/hello.txt", "/test-folder/goodbye.txt", no_poke=True)
# we should still sync properly because of the event cursor
while not os.path.exists("/usr/home/alice/test/goodbye.txt"):
time.sleep(1)
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
cloudsync-1.3.19a9.tar.gz
(186.6 kB
view hashes)
Built Distribution
cloudsync-1.3.19a9-py3-none-any.whl
(179.6 kB
view hashes)
Close
Hashes for cloudsync-1.3.19a9-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 52b8e1e8fa2cb2e1b731bc3a46aa919fe68b22eb9adc992ea03a6bae5abeb8e4 |
|
MD5 | 72367bc97de3e3e0940896a8f06a4327 |
|
BLAKE2b-256 | 061e91c0a5c5d645f64b10929c27514cdeb7954159e5dbe1e0f0f1aba8e37840 |