# Cloud Toolbox
![Tests](https://github.com/DotzInc/cloud-toolbox/actions/workflows/tests.yml/badge.svg?event=push)
![PyPI - Version](https://img.shields.io/pypi/v/cloudtoolbox)
![PyPI - Python Version](https://img.shields.io/pypi/pyversions/cloudtoolbox)
Decouple your applications from cloud providers with carefully crafted service interfaces.
## Requirements
* Python 3.8+
## Installation
To install Cloud Toolbox, use pip:
```sh
pip install cloudtoolbox
```
### Extras
Cloud Toolbox offers the following optional dependencies for easy installation of provider SDKs:
* `cloudtoolbox[amazon]` - Installs the Amazon AWS SDK.
* `cloudtoolbox[google]` - Installs the Google Cloud SDK.
* `cloudtoolbox[all]` - Installs SDKs for both providers.
## Example
Uploading a file to Google Cloud Storage.
```python
from cloud import factory
from cloud.google.storage import Uploader
FileUploader = factory.storage_uploader(Uploader)
bucket = "my-bucket"
filename = "notes.txt"
filepath = f"/path/to/{filename}"
uploader = FileUploader()
uploader.upload(bucket, filename, filepath)
```
Switching from Cloud Storage to Amazon S3.
```python
# Replace this import
from cloud.google.storage import Uploader
# For this one
from cloud.amazon.s3 import Uploader
```
Raw data
{
"_id": null,
"home_page": null,
"name": "cloudtoolbox",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.8",
"maintainer_email": null,
"keywords": "cloud, tools, utilities, google, gcp, amazon, aws",
"author": null,
"author_email": "Dotz Developers <devs-dotz@dotz.com>",
"download_url": "https://files.pythonhosted.org/packages/6a/15/fe675651c492a8243c5b99e3b43cf5101d2760a8e7f21cce4f9e85e8779b/cloudtoolbox-0.5.0.tar.gz",
"platform": null,
"description": "# Cloud Toolbox\n\n![Tests](https://github.com/DotzInc/cloud-toolbox/actions/workflows/tests.yml/badge.svg?event=push)\n![PyPI - Version](https://img.shields.io/pypi/v/cloudtoolbox)\n![PyPI - Python Version](https://img.shields.io/pypi/pyversions/cloudtoolbox)\n\nDecouple your applications from cloud providers with carefully crafted service interfaces.\n\n## Requirements\n\n* Python 3.8+\n\n## Installation\n\nTo install Cloud Toolbox, use pip:\n\n```sh\npip install cloudtoolbox\n```\n\n### Extras\n\nCloud Toolbox offers the following optional dependencies for easy installation of provider SDKs:\n\n* `cloudtoolbox[amazon]` - Installs the Amazon AWS SDK.\n* `cloudtoolbox[google]` - Installs the Google Cloud SDK.\n* `cloudtoolbox[all]` - Installs SDKs for both providers.\n\n## Example\n\nUploading a file to Google Cloud Storage.\n\n```python\nfrom cloud import factory\nfrom cloud.google.storage import Uploader\n\nFileUploader = factory.storage_uploader(Uploader)\n\nbucket = \"my-bucket\"\nfilename = \"notes.txt\"\nfilepath = f\"/path/to/{filename}\"\n\nuploader = FileUploader()\nuploader.upload(bucket, filename, filepath)\n```\n\nSwitching from Cloud Storage to Amazon S3.\n\n```python\n# Replace this import\nfrom cloud.google.storage import Uploader\n\n# For this one\nfrom cloud.amazon.s3 import Uploader\n```\n",
"bugtrack_url": null,
"license": null,
"summary": "Toolbox for the cloud.",
"version": "0.5.0",
"project_urls": {
"Repository": "https://github.com/DotzInc/cloud-toolbox"
},
"split_keywords": [
"cloud",
" tools",
" utilities",
" google",
" gcp",
" amazon",
" aws"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "21b2422da5066f7ec4d5947a1efcf8fb215a2a6b0ea4cc1dcd71ef4e1d33bc64",
"md5": "11415ec6c51b5897732fe4af1a15fa2b",
"sha256": "bbe4e8e29bc1c32981911e061aafefc0956d077bc2c410b9615db46309e7eec4"
},
"downloads": -1,
"filename": "cloudtoolbox-0.5.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "11415ec6c51b5897732fe4af1a15fa2b",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.8",
"size": 7288,
"upload_time": "2024-09-06T14:32:26",
"upload_time_iso_8601": "2024-09-06T14:32:26.002955Z",
"url": "https://files.pythonhosted.org/packages/21/b2/422da5066f7ec4d5947a1efcf8fb215a2a6b0ea4cc1dcd71ef4e1d33bc64/cloudtoolbox-0.5.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "6a15fe675651c492a8243c5b99e3b43cf5101d2760a8e7f21cce4f9e85e8779b",
"md5": "e223e99a82dc5ceb0e7f2878cabaac89",
"sha256": "5beafb48cd8e36a019964edb6a255ba5b9f272dff8f0e5c318bfc3062bea10e0"
},
"downloads": -1,
"filename": "cloudtoolbox-0.5.0.tar.gz",
"has_sig": false,
"md5_digest": "e223e99a82dc5ceb0e7f2878cabaac89",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.8",
"size": 6663,
"upload_time": "2024-09-06T14:32:27",
"upload_time_iso_8601": "2024-09-06T14:32:27.455980Z",
"url": "https://files.pythonhosted.org/packages/6a/15/fe675651c492a8243c5b99e3b43cf5101d2760a8e7f21cce4f9e85e8779b/cloudtoolbox-0.5.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-09-06 14:32:27",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "DotzInc",
"github_project": "cloud-toolbox",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "cloudtoolbox"
}