Skip to content

pyapp-org/pyapp.aiobotocore

Repository files navigation

pyApp - AIOBotocore

Let us handle the boring stuff!

image

Maintainability

This extension provides Session and client factories for aiobotocore to allow authorization details to be configured via pyApp settings.

The extension also provides checks to confirm the settings are correct.

The extension now supports the standardised pyApp-Messaging interface.

Installation

Install using pip:

pip install pyapp-aiobotocore

Install using pipenv:

pipenv install pyapp-aiobotocore

Optionally add the AWS_CREDENTIALS block into your runtime settings file, this is only required if you need to apply specific credentials, the default settings provided by this extension work with assumed roles within of the AWS environment:

AWS_CREDENTIALS = {
    "default": {
        "region_name": None,
        "aws_access_key_id": None,
        "aws_secret_access_key": None,
        "aws_session_token": None,
    }
}

Usage

The following example obtains an S3 client:

from pyapp_ext.aiobotocore import create_client

s3 = create_client("S3")

API

pyapp_ext.aiobotocore.create_client(service_name: str, *, credentials: str = None, **client_kwargs)

Get an async botocore service client instance.

pyapp_ext.aiobotocore.get_session(default: str = None) -> Session

Get named Session instance.