Python AWS Helper Library
Project description
PyAwsHelper
Python AWS Helper Library
AWS Region Helper
Get Boto3 Client and Resource with refreshable session
from PyAwsHelper.boto_helper import BotoHelper
helper = BotoHelper()
# Both client is sharing common refreshable session
s3_client = helper.get_client(service_name="s3", region_name="us-east-1", role_arn="arn:aws:iam::123:role/my_db_role")
db_client = helper.get_client(service_name="dynamodb", region_name="us-east-1", role_arn="arn:aws:iam::123:role/my_db_role")
Use Raw Refreshable session to implement your need
# can use BotoHelper to get session
from PyAwsHelper.boto_helper import BotoHelper
helper = BotoHelper()
s3_client = helper.get_session(region_name="us-east-1", role_arn="arn:aws:iam::123:role/my_db_role")
# or can directly access raw BotoSession module
from PyAwsHelper.boto_session import BotoSession
session = BotoSession().refreshable_session()
client = session.client("s3") # we now can cache this client object without worrying about expiring credentials
Get AWS region from region suffix
from PyAwsHelper.region import Region
aws_region = Region.get_region("va")
>>> aws_region
'us-east-1'
Also supports providing default value
from PyAwsHelper.region import Region
aws_region = Region.get_region("foo", default_region="bar")
>>> aws_region
'bar'
Get region suffix from AWS region
from PyAwsHelper.region import Region
aws_region = Region.get_region_suffix("us-east-1")
>>> aws_region
'va'
Also supports providing default value
from PyAwsHelper.region import Region
aws_region = Region.get_region_suffix("foo", default_region_suffix="bar")
>>> aws_region
'bar'
Regions Config
{
"hk": "ap-east-1", # Hong Kong
"tk": "ap-northeast-1", # Tokyo
"se": "ap-northeast-2", # Seoul
"os": "ap-northeast-3", # Osaka-Local
"mu": "ap-south-1", # Mumbai
"sg": "ap-southeast-1", # Singapore
"sy": "ap-southeast-2", # Sydney
"au": "ap-southeast-2", # Sydney
"ce": "ca-central-1", # Central
"be": "cn-north-1", # Beijing
"ni": "cn-northwest-1", # Ningxia
"fr": "eu-central-1", # Frankfurt
"st": "eu-north-1", # Stockholm
"ir": "eu-west-1", # Ireland
"lo": "eu-west-2", # London
"pa": "eu-west-3", # Paris
"ba": "me-south-1", # Bahrain
"sp": "sa-east-1", # São Paulo
"va": "us-east-1", # N. Virginia
"va-gov": "us-gov-east-1",
"oh": "us-east-2", # Ohio
"ca": "us-west-1", # N. California
"nc": "us-west-1", # N. California
"ca-gov": "us-gov-west-1",
"nc-gov": "us-gov-west-1",
"or": "us-west-2", # Oregon
}
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
PyAwsHelper-0.0.9.tar.gz
(5.7 kB
view details)
Built Distribution
File details
Details for the file PyAwsHelper-0.0.9.tar.gz
.
File metadata
- Download URL: PyAwsHelper-0.0.9.tar.gz
- Upload date:
- Size: 5.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.1 CPython/3.10.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4f2cb116750d40437bf6d6b48f0efb253f7e338b847d4eb1c7c379fa8fb4ca98 |
|
MD5 | 96f3e8026126034b5ff508f150ab35cf |
|
BLAKE2b-256 | 368f8213e4ffd2b611a04a226e2b8a7273c8d61ac4a15a217f88d88d0557a659 |
File details
Details for the file PyAwsHelper-0.0.9-py3-none-any.whl
.
File metadata
- Download URL: PyAwsHelper-0.0.9-py3-none-any.whl
- Upload date:
- Size: 8.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.1 CPython/3.10.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5bd9b3e0864bd693d786b36acd1162be3690a8ea478b05be8c41e62c0a9f4555 |
|
MD5 | 8f18d75ed9ba95e4dd422937a903e715 |
|
BLAKE2b-256 | f0d703a46075fb4ac47cbcc4cf88dfa4d8e2a5eb77d6390a2868398ca0437fbf |