从环境变量、yaml/json文件或默认值加载值到提供的值。
chainload的Python项目详细描述
从环境变量、yaml/json文件或默认值加载值到提供的值。
获取链负载
简单:
pip install chainload
安装要求
pip install -r requirements.txt
或:
python setup.py install
使用链荷载
如果您有文件中存在的变量,我建议将文件对象分配给变量,然后将该变量传递给链式加载方法。
例如
$python>>>fromchainloadimportchainload>>>variable_file=chainload.load_file(file_name="tests/test_settings.yaml")>>>chainload.chain_load_variable("environment","environment","debug",variable_file)'production'
或者,如果有很多变量要加载,请使用基于类的方法:
$python>>>chainer=chainload.ChainloadSetup(filename="tests/test_settings.yaml",environment_variable_prefix="webapp_")>>>environment_value=chainer("environment")
后者的优点是,对于更大的用例来说,DRY要多得多。
请参阅文档字符串中的“链加载”变量,但这将按以下顺序加载变量:
默认值
从文件对象
从环境变量。
< P>可选:如果环境变量不存在,并且指定的文件选项名称存在于Env中,并且该行为被启用,则尝试从与A* 2 指定的同名的环境变量加载。
运行测试
如果要运行此包的测试:
$ make test python setup.py test running nosetests running egg_info writing chainload.egg-info/PKG-INFO writing top-level names to chainload.egg-info/top_level.txt writing dependency_links to chainload.egg-info/dependency_links.txt reading manifest file 'chainload.egg-info/SOURCES.txt' writing manifest file 'chainload.egg-info/SOURCES.txt' ......... ---------------------------------------------------------------------- Ran 9 tests in 0.007s
提交错误/问题
提交错误报告时,请包含Short, Self Contained, Correct (Compilable), Example。
新功能/拉取请求
如果请求一个新特性,请包含一个解释良好的用例和示例用法。
在发出拉取请求时,如果添加了新功能,请包括适当的测试。