python-dependency-injector/examples/providers/configuration/configuration_multiple.py

29 lines
782 B
Python
Raw Permalink Normal View History

2020-06-25 21:12:16 +00:00
"""`Configuration` provider values loading example."""
from dependency_injector import containers, providers
2020-06-25 21:12:16 +00:00
class Container(containers.DeclarativeContainer):
2020-06-25 21:12:16 +00:00
config = providers.Configuration()
2020-06-25 21:12:16 +00:00
2021-09-30 19:32:21 +00:00
if __name__ == "__main__":
container = Container()
2021-09-30 19:32:21 +00:00
container.config.from_yaml("./config.yml")
container.config.from_yaml("./config.local.yml")
assert container.config() == {
2021-09-30 19:32:21 +00:00
"aws": {
"access_key_id": "LOCAL-KEY",
"secret_access_key": "LOCAL-SECRET",
},
}
assert container.config.aws() == {
2021-09-30 19:32:21 +00:00
"access_key_id": "LOCAL-KEY",
"secret_access_key": "LOCAL-SECRET",
}
2021-09-30 19:32:21 +00:00
assert container.config.aws.access_key_id() == "LOCAL-KEY"
assert container.config.aws.secret_access_key() == "LOCAL-SECRET"