awsreplicate
A lightweight Python SDK for cross-region data replication in AWS.
Features
- Async S3 bucket replication using
aioboto3 - DynamoDB table replication between regions
- Concurrent operations with configurable limits
- Automatic retry logic with exponential backoff
- Structured logging with
structlog - Comprehensive test coverage with
moto
Installation
pip install awsreplicate
For development:
pip install awsreplicate[dev]
Quick Start
import asyncio
from awsreplicate import AWSConfig, S3Replicator
async def main():
# Configure AWS
config = AWSConfig()
# Create replicator
replicator = S3Replicator(
config=config,
source_region="us-east-1",
target_region="us-west-1",
max_concurrent=20
)
# Replicate bucket
result = await replicator.replicate_bucket(
source_bucket="my-source-bucket",
target_bucket="my-target-bucket"
)
print(f"Replicated {result['successful']} objects")
asyncio.run(main())
Development
# Install in development mode
pip install -e .[dev]
# Run tests
pytest
# Format code
black awsreplicate tests
# Lint
ruff check awsreplicate tests
License
MIT License
Metadata
Release files for awsreplicate 0.1.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| awsreplicate-0.1.1.tar.gz | 8.2 kB | Without provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| awsreplicate-0.1.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 16.6 kB
Release files / awsreplicate-0.1.1.tar.gz
| Download URL | awsreplicate-0.1.1.tar.gz |
|---|---|
| Size | 8.2 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
6562f8a0968b46f7558e2c2dfe513013ec598123b8fc39950226145378a093fa
|
|
BLAKE2b-256 checksum How to use checksums |
ecfca0150527ce8acd9d2ad40100864f69e0febc82204be9508ea3c5c76e3965
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.12.10
|
Release files / awsreplicate-0.1.1-py3-none-any.whl
| Download URL | awsreplicate-0.1.1-py3-none-any.whl |
|---|---|
| Size | 8.4 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
1d93ee45cfc0f8c6ae36737b8158ba37d164b86d557fede5f824f621fb283aad
|
|
BLAKE2b-256 checksum How to use checksums |
85129b06a8ad0d74938b65d0f160f06c2dd73f404525b8abda545490d58cc1ec
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.12.10
|
Security for awsreplicate 0.1.1
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.