配置字典与yaml源和秘密支持
figtion的Python项目详细描述
图
配置包
为什么呢?
这是支持文本文件的最简单的配置接口。
优点
- seemless python
dict
接口- 统一配置定义和默认值
- 用于文件系统输入和序列化的YAML文本文件源
- 简单优先权
defaults
keys定义配置keys- yamlvalues覆盖
defaults
values
- 机密支持
- 秘密保存到私人YAML
- 来自公共yaml的自动更新
示例
配置定义和默认值
import figtion
defaults = {'my server' : 'www.bestsite.web'
,'number of nodes' : 5
,'password' : 'huduyutakeme4' }
cfg = figtion.Config(defaults=defaults,filepath='~/conf.yml')
print(cfg['my server'])
这将打印“www.bestsite.web”,除非~/conf.yml
中的“我的服务器”值有其他值。
配置机密
当你想要一个公共配置文件和一个单独的秘密文件时
cfg = figtion.Config(defaults=defaults,filepath='~/conf.yml',secretpath='/opt/creds.yml')
cfg.mask('password')
print(cfg['password'])
这将打印存储在/opt/creds.yml
而不是~/conf.yml
中的'password'
的值如果在任意一个yaml文件中更改了'password'
的值,则下次在python中加载该类时,将从~/creds.yml
再次更新和屏蔽密码。
python类总是返回正确的值。
路线图
- 0.9-秘密存储在单独的位置
- 1.0-机密存储在加密位置