Skip to main content

sentieoaws

Project description

Sentieo AWS

Python Version

Tests Codecov

pre-commit Black

Installation

You can install SentieoAWS via [pip] from [PyPI]:

$ pip install --extra-index-url https://api.packagr.app/PLesWotlL sentieoaws==0.0.1

Documentation

Sentieoaws is a wrapper around the current boto3 packages for various aws services including S3, SNS, SQS etc.

Usage

For AWS Base Client

from sentieoaws.sentieo_aws_base import SentieoAWSBase
aws_client = SentieoAWSBase("s3", local=True).get_client()
aws_resouce = SentieoAWSBase("s3", local=True).get_resource()

For S3

from sentieoaws.s3api import SentieoS3Connection
s3_obj = SentieoS3Connection(local=True)

BUCKET_NAME = "test_bucket"
OBJECT_KEY = "test_object"

bucket = s3_obj.get_bucket(BUCKET_NAME) # returns bucket object
object = s3_obj.get_object(BUCKET_NAME, OBJECT_KEY) # returns s3 object
content, content_type = s3_obj.get_object_content(BUCKET_NAME, OBJECT_KEY) # returns content, content_type 
uploaded = s3_obj.put_object_content(BUCKET_NAME, OBJECT_KEY, "content", "content_type") # return True / False
s3_obj.upload_file(BUCKET_NAME, OBJECT_KEY, file_path, is_compress, is_public) # uploads file
s3_obj.download_file(BUCKET_NAME, OBJECT_KEY, file_path) # downloads file

Development

  • Clone this repository
  • Requirements:
  • Create a virtual environment and install the dependencies
make poetry-download
  • Activate the virtual environment
make env

Testing

make test

Pre-commit

Pre-commit hooks run all the auto-formatters (e.g. black, isort), linters (e.g. mypy, flake8), and other quality checks to make sure the changeset is in good shape before a commit/push happens.

You can install the hooks with (runs for each commit):

pre-commit install

Or if you want them to run only for each push:

pre-commit install -t pre-push

Or if you want e.g. want to run all checks manually for all files:

pre-commit run --all-files

Contributing

Contributions are very welcome.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

sentieoaws-0.0.6.tar.gz (7.4 kB view hashes)

Uploaded Source

Built Distribution

sentieoaws-0.0.6-py3-none-any.whl (7.6 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page