Stratocumulus is the backend component of Cumulus, which aims to providing a unified backend interface for different cloud environments.
Installation
Stratocumulus does not include any Cloud SDK. You need to install the corresponding SDK separately, depending on which Cloud platform you use:
Google Cloud: Install Google Cloud SDK.
Amazon AWS: Install AWS CLI.
Local machine: Works for Linux and macOS. Please make sure rsync is installed, as some commands will use it.
After that, install Stratocumulus in your Python environment by command:
pip install stratocumulus
Usage
Stratocumulus has 4 commands:
cp: Copy file(s)/folder(s).
sync: Synchronize two folders, usually used for copying one folder.
rm: Remove file(s)/folder(s).
exist: Check if a (remote) file/folder exists.
These commands have options specific to backend. For now, Stratocumulus supports the following backends:
aws: Amazon AWS.
gcp: Google Cloud.
local: Local machine. In specific, macOS or Linux.
cp
This command copies file(s) or folder(s). See examples below:
# AWS upload strato cp file1 folder2 s3://my-bucket/target_folder/ # AWS download strato cp s3://my-bucket/source_folder/*.zip /target_folder/ # GCP upload strato cp -r --ionice file1 folder2 gs://my-bucket/target_folder/ # GCP download mkdir /target_folder strato cp gs://my-bucket/source_folder/*.zip /target_folder/ # Local Machine strato cp -r file1 folder2 /target_folder/
Notice that:
For AWS backend, you must explicitly attach a trailing slash for source folder.
For Google Cloud download, you’ll have to explicitly create the target folder, and then run strato cp command.
Wildcards are acceptable.
-r option is not needed for AWS, and copying folders is always recursive.
--ionice option only work for Google Cloud.
For details on the options, try command strato cp -h.
sync
This command synchronizes two folders. Notice that this synchronization will delete content in the target folder not existing in the source folder.
See examples below:
# AWS strato sync source_folder s3://my-bucket/target_folder # GCP strato sync --ionice source_folder gs://my-bucket/target_folder # Local Machine strato sync source_folder target_folder
Notice that:
--ionice option only work for Google Cloud.
For details on the options, try command strato sync -h.
rm
This command deletes file(s) or folder(s). See examples below:
# AWS strato rm s3://my-bucket/file1 s3://my-bucket/folder2/ # GCP strato rm gs://my-bucket/file1 gs://my-bucket/folder2 gs://my-bucket/folder3/*.zip # Local Machine strato rm file1 folder2
Notice that:
For AWS backend, wildcards are not yet accepted.
For details on the options, try command strato rm -h.
exists
This command checks if a (remote) file or folder exists. If it exists, the command terminates without any output. Otherwise, the command will break with Python subprocess.CalledProcessError exception.
See examples below:
# AWS strato exists s3://my-bucket/file1 # GCP strato exists gs://my-bucket/folder2/ # Local Machine strato exists folder2/
Notice that this command works for both file and folder, regardless of backend.
For details on the options, try command strato exists -h.
help
Type strato -h or strato --help to check available Stratocumulus commands.
Check version
Type strato -v or strato --version to check the version of Stratocumulus currently installed on your machine.
Metadata
Release files for stratocumulus 0.3.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| stratocumulus-0.3.0.tar.gz | 13.4 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| stratocumulus-0.3.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 29.4 kB
Release files / stratocumulus-0.3.0.tar.gz
| Download URL | stratocumulus-0.3.0.tar.gz |
|---|---|
| Size | 13.4 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
29a6c59a5d0caee6aa6c0b5694907e04fbf493a2bae7dcde02dce3315822fde9
|
|
BLAKE2b-256 checksum How to use checksums |
1ea6a91ac32184ed073f26a85753da8621ce8708ce2adcf9b716c4f328f3b3fb
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.11.11
|
Release files / stratocumulus-0.3.0-py3-none-any.whl
| Download URL | stratocumulus-0.3.0-py3-none-any.whl |
|---|---|
| Size | 16.0 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
1d1d9c7ea110a9f2891c2175c337f563911f4a9ee6cc97bce6f4f8508819553d
|
|
BLAKE2b-256 checksum How to use checksums |
bea89c9f2cc6f2000e4c1cf68187fb5146f8e630c54632c369d9e0ceaeeb16f6
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.11.11
|