通过使用jinja2解析环境生成文件
env-render的Python项目详细描述
使用从处理环境构建的上下文呈现带有jinja2的文件 变量。
安装
来自PIP:
$ pip install env-render
用法
要呈现Jinja文档并使用 前缀app,输入以下命令:
$ env-render -p APP src_template.txt output.txt
示例
所以想象一下这个环境:
APP_0_ENV0=a APP_0_ENV1=b APP_0_HOSTNAME=app_0 APP_1_ENV0=c APP_1_ENV1=d APP_1_HOSTNAME=app_1 APP_2_ENV0=e APP_2_ENV1=f APP_2_HOSTNAME=app_2
成为本词典:
{ "apps": [ { "_index": 0, "ENV0": "a", "ENV1": "b", "HOSTNAME": "app_0" }, { "_index": 1, "ENV0": "c", "ENV1": "d", "HOSTNAME": "app_1" }, { "_index": 2, "ENV0": "e", "ENV1": "f", "HOSTNAME": "app_2" } ] }
然后可以像这样在文件中使用。说一个haproxy.cfg文件:
listen someapp bind 0.0.0.0:80 {% for app in apps %} server server{{ app._index }} {{ app.HOSTNAME }}:80 {% endfor %}
这就是这个图书馆的使命。