Back to home

为什么无法拓展supervisors的环境变量PATH

原文链接:http://serverfault.com/questions/331027/supervisord-how-to-append-to-path

问题描述

我打算给环境变量加上一些执行链接,在supervisord中我可以通过这样重置PATH:

environment=PATH="/home/site/environments/master/bin"

但是当我尝试:

environment=PATH="/home/site/environments/master/bin:$PATH"

我发现supervisord并没有执行$PATH变量,有人注意到了吗?

Dmitry Vasilyanov 回答

supervisord 不会对配置文件里的变量进行处理,因此你无法拓展变量。尽管你可以通过在2011年的一个讨论中的补丁,使得你可以添加%($PATH) 来展开,但是据我所知,这个feature还未合并到主版本中。作为一个可行的解决方案,你可以通过一个专门提供环境变量的脚本去启动整个环境,然后你就可以设置supervisord配置中的command=/usr/local/bin/setup_env_master.sh program_name arguments 达到目的。