Я хотел бы поместить конфигурацию (в данном случае, имя сайта) в супервизор переменных окружения, для расширения в программе: аргументы команды x. Поддерживается ли это? В формулировке документации, по-видимому, указывается «да».
следующий синтаксис не работает для меня на контролером-3.0 (отрывок из конфигурационного файла):
[supervisord]
environment = SITE="mysite"
[program:service_name]
command=/path/to/myprog/myservice /data/myprog/%(ENV_SITE)s/%(ENV_SITE)s.db %(program_name)s_%(process_num)03d
process_name=%(program_name)s_%(process_num)03d
numprocs=5
numprocs_start=1
воскрешает следующее сообщение об ошибке:
sudo supervisord -c supervisord.conf
Error: Format string
'/path/to/myprog/myservice /data/myprog/%(ENV_SITE)s/%(ENV_SITE)s.db %(program_name)s_%(process_num)03d'
for 'command' contains names which cannot be expanded
Чтение документации, я ожидал, переменные окружения должен быть доступен для расширение в программе: команда x как% (ENV_VAR) с:
http://supervisord.org/configuration.html#program-x-section-values
Команда:
«Строковые выражения вычисляются против словаря, содержащего ключи group_name, host_node_name, process_num, имя_приложения, здесь (директория файл конфигурации supervisord), и переменные среды все supervisord в с префиксом ENV_ «.
Введенные: 3,0
Связанные:
Есть открытые запросы тянуть, чтобы включить расширение в дополнительных значениях раздела:
https://github.com/Supervisor/supervisor/issues?labels=expansions&page=1&state=open
Поиск по Гулу (или SO) не возвращает никаких примеров попыток использования% (ENV_VAR) s расширение в значении командной строки:
https://www.google.com/search?q=supervisord+environment+expansion+in+command