用于处理嵌套incode配置组的配置库。
confspirator的Python项目详细描述
openstack的oslo.config的一个分支,关注嵌套 配置组,以及使用yaml的能力。
confspirator删除任何命令行集成或文件读取(目前) 并希望您传入一本字典,该字典将根据 定义的组。这使得库现在可以专注于代码默认值 和配置字段解析。
它能做什么
confspirator专注于配置组和在它们上注册配置字段。 组本身可以在父组上注册。
它还可以支持动态组的延迟加载配置,其中 必须从插件动态注册或出于其他原因。
安装
pip install confspirator
用法
首先,让我们组合一个简单的配置组,并注册一些配置值:
# ./root_conf.py from confspirator import groups, fields my_root_group = groups.ConfigGroup("my_app") my_root_group.register_child_config( fields.StrConfig("top_level_config", default="some_default")) sub_group = groups.ConfigGroup("sub_section") sub_group.register_child_config(fields.BoolConfig("bool_value")) my_root_group.register_child_config(sub_group)
现在我们要根据这个组定义在配置中加载 检查值:
import confspirator from root_conf import my_root_group conf_dict = { "my_app": { "top_level_config": "not_the_default", "sub_section": { "bool_value": True } } } CONF = confspirator.load(my_root_group, conf_dict) print(CONF.top_level_config) print(CONF.sub_section.bool_value)d
待办事项
- 从yaml、json和ini文件读入数据的读取器逻辑。
- 导出示例配置
- 潜在的命令行集成