帮助您在不同环境中管理设置
envelop的Python项目详细描述
在不同的环境中管理您的设置很难。因此,**信封**来帮助你假装你只有一个
设置文件,在你部署的时候它会神奇地工作。
在yipit,我们使用chef来协调部署过程,并使用属性或数据包来维护
配置。我们使用[envdir](http://cr.yp.to/daemontools/envdir.html)运行在chef中设置了变量的应用程序。然后,我们使用
**envelope**读取这些变量并输入应用程序配置
系统。
所以,当应用程序在设置了正确的
变量的环境中运行时,它将正常工作。
10.0.0.2
````
>应用设置胶代码将如下:
```python
>>>gt;
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>dburi=env.get'u-uri('database'u-uri')
>>>>>>>>>>>>u'localhost'
>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>/>>;>;获取环境清单('allowed'u ips')
['10.0.0.0.1,10.0.0.0.0.2']
```
>如果您只想从本地文件加载东西,则
`environment.from_file()`constructor.from_file()`environment.from file()` constronvironment.from_file()` constronvironment.from
>
>>>>>;从信封环境导入环境环境中获取环境信息
>>>;从文件环境环境中获取环境环境信息
>>>>('/etc/app.cfg')
>;>;gt;env.get_bool('bool_flag'bool'u flag')
true
>;gt;gt;env.get_float('float_val'float'val')
3.14
``````
` app.cfg`文件的外观如下:
``yaml
bool_flag:true
float_val:3.14
``````
>
您还可以从文件夹中加载变量,其中每个文件都是一个
环境变量,文件的内容就是这个值。就像
[envdir](http://cr.yp.to/daemontools/envdir.html)。
就像这里一样:`mysql://root:secret@localhost:3306/mydb`.
uri=env.get_uri('mysql_conn_uri')
>;>uri.host
'localhost'
>;>uri.port
3306
>;>uri.user
'root'
>;>密码
'secret'
````
>对其进行黑客攻击
>安装依赖性
``` console
>pip install-r requirements-dev.txt
``````
`运行测试
`` console
``````进行测试
`````
``````
```````````````进行测试
>
`````````;更改它
确保为新功能编写测试并保持测试覆盖率100%
v=8vjissamnww)
2014年5月21日,我们将其更名为“信封”。
设置文件,在你部署的时候它会神奇地工作。
在yipit,我们使用chef来协调部署过程,并使用属性或数据包来维护
配置。我们使用[envdir](http://cr.yp.to/daemontools/envdir.html)运行在chef中设置了变量的应用程序。然后,我们使用
**envelope**读取这些变量并输入应用程序配置
系统。
所以,当应用程序在设置了正确的
变量的环境中运行时,它将正常工作。
10.0.0.2
````
>应用设置胶代码将如下:
```python
>>>gt;
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>dburi=env.get'u-uri('database'u-uri')
>>>>>>>>>>>>u'localhost'
>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>/>>;>;获取环境清单('allowed'u ips')
['10.0.0.0.1,10.0.0.0.0.2']
```
>如果您只想从本地文件加载东西,则
`environment.from_file()`constructor.from_file()`environment.from file()` constronvironment.from_file()` constronvironment.from
>
>>>>>;从信封环境导入环境环境中获取环境信息
>>>;从文件环境环境中获取环境环境信息
>>>>('/etc/app.cfg')
>;>;gt;env.get_bool('bool_flag'bool'u flag')
true
>;gt;gt;env.get_float('float_val'float'val')
3.14
``````
` app.cfg`文件的外观如下:
``yaml
bool_flag:true
float_val:3.14
``````
>
您还可以从文件夹中加载变量,其中每个文件都是一个
环境变量,文件的内容就是这个值。就像
[envdir](http://cr.yp.to/daemontools/envdir.html)。
就像这里一样:`mysql://root:secret@localhost:3306/mydb`.
uri=env.get_uri('mysql_conn_uri')
>;>uri.host
'localhost'
>;>uri.port
3306
>;>uri.user
'root'
>;>密码
'secret'
````
>对其进行黑客攻击
>安装依赖性
``` console
>pip install-r requirements-dev.txt
``````
`运行测试
`` console
``````进行测试
`````
``````
```````````````进行测试
>
`````````;更改它
确保为新功能编写测试并保持测试覆盖率100%
v=8vjissamnww)
2014年5月21日,我们将其更名为“信封”。