在运维处理部署升级任务的时候,经常会有配置文件的处理需求
对于python的应用程序,有些配置文件是 py 格式的,比如 django 的setting.py
py文件中配置的变量,有多种类型 bool, list, dict,注释行 等等
那么问题来了,怎么在升级程序的时候,动态的增删改setting.py 里面的变量
示例
源文件:
DEBUG = True
aa = "dsadasd"
bb = [
"dsad",
"dsadas"
]
cc = {
"c1":12345,
"c2":"test"
}
需求
要求保留注释行
增加变量
dd= {
"d1":2344,
"d2":"dddd"
}
修改变量
bb = [
"b1",
"b2"
]
删除变量
cc = {
"c1":12345,
"c2":"test"
}
这些怎么用程序方便的实现呢?
或者现在是否有工具可以实现?
为啥要动态改
setting.py
里面的内容,你可以把setting.py
里面需要动态修改的内容抽离到普通文件里面,然后对普通文件进行修改啊。使用reload在运行时重加载setting模块,可以达到热更新的目的。