芹菜配置更新 - 无需重新部署芹菜

时间:2016-01-17 14:28:43

标签: python configuration celery

我正在运行flask app,使用celery进行任务队列管理。

运行任务时,将从另一个导入的模块中读取配置(例如数据库凭据)。

我无法弄清楚如何重新加载导入的配置模块(导入的文件在首次调用时读取外部配置文件),而无需重新启动芹菜。

干杯,

1 个答案:

答案 0 :(得分:0)

将需要重新加载的任何配置存储在.ini文件中,而不是存储在python模块中。您可以使用ConfigParser模块阅读此内容。

您的文件可能看起来像

[db]
username = foo
password = bar
host = baz

然后您可以通过执行

随时重新加载配置
import ConfigParser

config = ConfigParser.RawConfigParser()
config.read('config.ini')

db_username = config.get('db', 'username')
db_password = config.get('db', 'password')
db_host = config.get('db', 'host')