# 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/a6/69/2fa8a5d53ae2ac0c22c72f9274698316f93971512613c5fb6cb1394f5a8d/cloudtoolbox-0.2.1.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.2.1",
"project_urls": {
"Repository": "https://github.com/DotzInc/cloud-toolbox"
},
"split_keywords": [
"cloud",
" tools",
" utilities",
" google",
" gcp",
" amazon",
" aws"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "7defc03e7e4d23dc567bdbfb5948160a77d818891a6bff93a689e833e37fac1f",
"md5": "5b49cf05a9cbb0fbd6770bbbbb4bf2d4",
"sha256": "98f22fb3fda88e913fa2c1e51fc723004fde209962acb524751cf20b2c4ac55c"
},
"downloads": -1,
"filename": "cloudtoolbox-0.2.1-py3-none-any.whl",
"has_sig": false,
"md5_digest": "5b49cf05a9cbb0fbd6770bbbbb4bf2d4",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.8",
"size": 5736,
"upload_time": "2024-05-13T23:52:07",
"upload_time_iso_8601": "2024-05-13T23:52:07.732372Z",
"url": "https://files.pythonhosted.org/packages/7d/ef/c03e7e4d23dc567bdbfb5948160a77d818891a6bff93a689e833e37fac1f/cloudtoolbox-0.2.1-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "a6692fa8a5d53ae2ac0c22c72f9274698316f93971512613c5fb6cb1394f5a8d",
"md5": "e64c4b69929fbcf51b3a87e9d18425e5",
"sha256": "22c70289ba5d1af604217443b6d5d3310c1cc35c3b543a24c4f8f85f4639fcb6"
},
"downloads": -1,
"filename": "cloudtoolbox-0.2.1.tar.gz",
"has_sig": false,
"md5_digest": "e64c4b69929fbcf51b3a87e9d18425e5",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.8",
"size": 5039,
"upload_time": "2024-05-13T23:52:09",
"upload_time_iso_8601": "2024-05-13T23:52:09.212103Z",
"url": "https://files.pythonhosted.org/packages/a6/69/2fa8a5d53ae2ac0c22c72f9274698316f93971512613c5fb6cb1394f5a8d/cloudtoolbox-0.2.1.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-05-13 23:52:09",
"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"
}