14
我使用環境變量在Supervisord的程序段,他們的工作只是罰款:如何在Supervisord的[supervisord]配置節中使用環境變量?
[program:some_prog]
command=%(ENV_env_var_name)s/...
我無法弄清楚如何雖然做同樣的[supervisord]部分。 我試圖使用相同的語法與不ENV_前綴,但得到以下錯誤:
Traceback (most recent call last):
File "/usr/local/bin/supervisord", line 9, in <module>
load_entry_point('supervisor==3.0a12', 'console_scripts', 'supervisord')()
File "/usr/local/lib/python2.7/dist-packages/supervisor-3.0a12-py2.7.egg/supervisor/supervisord.py", line 356, in main
options.realize(args, doc=__doc__)
File "/usr/local/lib/python2.7/dist-packages/supervisor-3.0a12-py2.7.egg/supervisor/options.py", line 419, in realize
Options.realize(self, *arg, **kw)
File "/usr/local/lib/python2.7/dist-packages/supervisor-3.0a12-py2.7.egg/supervisor/options.py", line 284, in realize
self.process_config_file()
File "/usr/local/lib/python2.7/dist-packages/supervisor-3.0a12-py2.7.egg/supervisor/options.py", line 478, in process_config_file
Options.process_config_file(self, do_usage=do_usage)
File "/usr/local/lib/python2.7/dist-packages/supervisor-3.0a12-py2.7.egg/supervisor/options.py", line 292, in process_config_file
self.read_config(self.configfile)
File "/usr/local/lib/python2.7/dist-packages/supervisor-3.0a12-py2.7.egg/supervisor/options.py", line 527, in read_config
section.directory = existing_directory(directory)
File "/usr/local/lib/python2.7/dist-packages/supervisor-3.0a12-py2.7.egg/supervisor/datatypes.py", line 336, in existing_directory
nv = v % {'here':here}
KeyError: 'var_name'
有沒有辦法做到這一點?
謝謝Martijn。顯然已經有一個功能請求在[supervisord問題跟蹤器]中打開(https://github.com/Supervisor/supervisor/issues/126) – syoavc 2012-07-17 12:08:47
所以有;您可以對您的具體使用情況留言,以說明該功能的實用性。 – 2012-07-17 12:17:37
該功能自2014年6月起合併;有趣的是,3.2版尚未發佈,距離上次發佈還有一年時間。 – tutuDajuju 2015-10-16 12:57:55