Easy to work with Google Cloud Platform Storage Bucket wrapper
Project description
Google Cloud Platform Storage Bucket
This package just aims to make life a little bit easier for people who have to work with google cloud storage bucket.
Quickstart:
- get the package
pip install storage-bucket
- Download your keyfile and save it as key.json and point to it with env var:
gcloud iam service-accounts keys create key.json --iam-account your_service_account@your_project.iam.gserviceaccount.com
export GOOGLE_APPLICATION_CREDENTIALS='key.json'
- Run some code:
from storage_bucket.download_file import DownloadFile, download_file
def use_data_for_something(data):
print(data)
# Normal way, this might throw exception... handle them yourself.
my_data = download_file(
'my_bucket',
'my_file.txt',
)
use_data_for_something(my_data)
# Returns Modal way
# this will _only_ call use_data_for_something when data is successfully downloaded.
# so its completely safe.
DownloadFile()(
'my_bucket',
'my_file.txt',
).map(
use_data_for_something, # send data to this function,
)
File/blob operations
Download
from storage_bucket.download_file import DownloadFile, download_file
DownloadFile()('bucket', 'filename')
download_file('bucket', 'filename')
Upload
from storage_bucket.upload_file import UploadFile, upload_file
UploadFile()(b'data', 'bucket_name', 'filename')
upload_file(b'data', 'bucket_name', 'filename')
List
from storage_bucket.list_files import ListFiles, list_files
ListFiles()('bucket')
list_files('bucket')
ListFiles()('bucket', 'foldername/')
list_files('bucket', 'foldername/')
Delete
from storage_bucket.delete_file import DeleteFile, delete_file
DeleteFile()('bucketname', 'filename')
delete_file('bucketname', 'filename')
Bucket operations
Create Bucket
from storage_bucket.create import CreateBucket, create_bucket
CreateBucket()('bucket-name', 'EU', 'STANDARD')
create_bucket('bucket-name', 'EU', 'STANDARD')
Delete Bucket
from storage_bucket.delete import DeleteBucket, delete_bucket
DeleteBucket()('bucket-name')
delete_bucket('bucket-name')
List Buckets
from storage_bucket.list import ListBuckets, list_buckets, list_bucket_names
buckets = ListBuckets()()
bucket_names = list_bucket_names(buckets.unwrap())
buckets2 = list_buckets()
bucket_names2 = list_bucket_names(buckets2)
The use of Returns library.
- Lets us get rid of all exceptions.
- Lets us chain stuff so everything looks good.
- Lets you use
DownloadFile()(args...).map(dostuff).alt(dostuffonfailure)
- Don't like it? use the matching normal function provided for your convenience.
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
storage-bucket-0.5.0.tar.gz
(7.5 kB
view hashes)
Built Distribution
Close
Hashes for storage_bucket-0.5.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 81e713d85d394d3a2f5f0c305a487cf071927b8a8375a546216d3d9d099cc556 |
|
MD5 | 2229d38b60b05523f95df6b128603aaf |
|
BLAKE2b-256 | 988080a0cf421e33b84d9baed9587cfbfbb4d3828327968fe12b311762d6dc9b |