Catalog PyPI
Back to packageRELEASE DETAILS

1.0.2

PyPI

actvalue.aws-pysdk

AWS Python SDK wrapper for boto3 commonly used functions

Published3 Jan 2026
Direct dependencies5
Transitive dependenciesNot calculated

README

Version 1.0.2 documentation

AWS Python SDK

Simple wrapper for AWS boto3 SDK commonly used functions.

Features

  • 📦 S3 operations (read, write, copy, list, delete, signed URLs)
  • 🔐 SSM Parameter Store integration
  • ⚡ Lambda function invocation (async and sync)
  • 🚀 Optimized for AWS Lambda and serverless environments

Installation

pip install actvalue.aws-pysdk

Or with uv:

uv add actvalue.aws-pysdk

Configuration

Provide the following environment variables:

  • ENV: development | production | ...
  • AWSPROFILE: A named profile (non-default) in the credential file, e.g.: myprofile
  • AWSREGION: A region name, e.g.: eu-west-1

Note: AWSPROFILE and AWSREGION are needed in development only. Production uses the default session/client configuration.

Usage

S3 Operations

from aws_pysdk import s3_write, s3_read, s3_read_to_string, s3_get_signed_url
import os

# Write to S3
s3_write('my-bucket', 'hello.txt', 'Hello World', 'text/plain')

# Read from S3
response = s3_read('my-bucket', 'hello.txt')
content = response['Body'].read()

# Read directly to string
content_str = s3_read_to_string('my-bucket', 'hello.txt')

# Get signed URL for reading
read_url = s3_get_signed_url(
    {'Bucket': 'my-bucket', 'Key': 'file.txt'},
    'READ',
    3600  # expires in 1 hour
)

# Get signed URL for writing
write_url = s3_get_signed_url(
    {'Bucket': 'my-bucket', 'Key': 'file.txt', 'ContentType': 'text/plain'},
    'WRITE',
    3600
)

SSM Parameter Store

from aws_pysdk import ssm_load_parameters
import os

# Define parameters to load
params = [
    {'name': '/app/bucket/name', 'env_var_name': 'MY_BUCKET', 'decrypt': False},
    {'name': '/app/api/key', 'env_var_name': 'API_KEY', 'decrypt': True},
]

# Load parameters into environment variables
ssm_load_parameters(params)

# Access loaded parameters
my_bucket = os.environ['MY_BUCKET']
api_key = os.environ['API_KEY']

Lambda Function Invocation

from aws_pysdk import lambda_invoke, lambda_invoke_with_response

# Asynchronous invocation (fire and forget)
lambda_invoke('my-function', {'key': 'value'})

# Synchronous invocation (wait for response)
result = lambda_invoke_with_response('my-function', {'key': 'value'})
print(result)  # Parsed JSON response

# Invoke with ARN
lambda_invoke_with_response(
    'arn:aws:lambda:region:account:function:my-function',
    {'data': 'payload'}
)

Development

Prerequisites

  • Python 3.11+
  • uv (recommended) or pip
# Install dependencies
make install

# Run tests
make test

# Format code
make format

# Lint code
make lint

# Build package
make build

Available Make Commands

make help           # Show all available commands
make install        # Install dependencies with uv
make test           # Run tests with pytest
make lint           # Lint code with ruff
make format         # Format code with ruff
make build          # Build package with uv
make publish        # Publish to PyPI
make publish-test   # Publish to Test PyPI
make clean          # Clean build artifacts
make venv           # Show virtual environment location

Manual Setup

# Create and activate virtual environment
python -m venv .venv
source .venv/bin/activate  # On Windows: .venv\Scripts\activate

# Install package in development mode
pip install -e ".[dev]"

# Run tests
pytest

Publishing

To Test PyPI

make publish-test

To Production PyPI

make publish

License

MIT

Downloads & popularity

Awaiting observations

No metric observations yet

Download counts and popularity will appear here as the collector receives them.

Declared dependencies 5

Native requirements
5 direct targetsNot calculated transitive count
Package / targetRequirementRelationship
aws-lambda-powertools
Environment
{
  "extras": "",
  "marker": null,
  "requires_python": ">=3.11",
  "evaluation": "NOT_EVALUATED"
}
aws-lambda-powertools>=3.23.0runtime
boto3
Environment
{
  "extras": "",
  "marker": null,
  "requires_python": ">=3.11",
  "evaluation": "NOT_EVALUATED"
}
boto3>=1.40.0runtime
pytest
Environment
{
  "extras": "",
  "marker": "extra == \"dev\"",
  "requires_python": ">=3.11",
  "evaluation": "NOT_EVALUATED"
}
pytest>=8.3.4; extra == "dev"runtime
ruff
Environment
{
  "extras": "",
  "marker": "extra == \"dev\"",
  "requires_python": ">=3.11",
  "evaluation": "NOT_EVALUATED"
}
ruff>=0.8.4; extra == "dev"runtime
twine
Environment
{
  "extras": "",
  "marker": "extra == \"dev\"",
  "requires_python": ">=3.11",
  "evaluation": "NOT_EVALUATED"
}
twine>=6.0.1; extra == "dev"runtime

Distribution files

2 collected
actvalue_aws_pysdk-1.0.2-py3-none-any.whl

bdist_wheel · 7.97 KB · Python py3

Source file
actvalue_aws_pysdk-1.0.2.tar.gz

sdist · 37.8 KB · Python source

Source file

Metadata history

Meaningful changes
Current collected state Current

Observed since 20 Oct, 18:42 UTC

No superseded metadata states collected. Unchanged observations do not create new revisions.

Record identity

package_version:ea1d74ddbbb45f19deccf4608c01d67b8747ec098e523d025bda93d5833ec0a3

Other collected versions

View all collected versions →