python-dependency-injector/examples/providers/configuration/configuration.py
2021-09-30 15:32:21 -04:00

30 lines
686 B
Python

"""`Configuration` provider example."""
import boto3
from dependency_injector import containers, providers
class Container(containers.DeclarativeContainer):
config = providers.Configuration()
s3_client_factory = providers.Factory(
boto3.client,
"s3",
aws_access_key_id=config.aws.access_key_id,
aws_secret_access_key=config.aws.secret_access_key,
)
if __name__ == "__main__":
container = Container()
container.config.from_dict(
{
"aws": {
"access_key_id": "KEY",
"secret_access_key": "SECRET",
},
},
)
s3_client = container.s3_client_factory()