Я не могу понять, как добавить к пути по умолчанию в конфигурации программы супервизора.
Я могу сбросить путь:
environment=PATH="/home/site/environments/master/bin"
Но когда я пытаюсь:
environment=PATH="/home/site/environments/master/bin:$PATH"
Я вижу, что руководитель не оценивает $PATH
.
Google почему-то не сильно помог в этом, я не могу поверить, что я первый, кому это нужно.
Надзорный орган должен иметь поддержку для этого, есть идеи, что это такое?
supervisord
Prody
источник
источник
supervisord
не запускайте shell для предварительной обработки переменных в файле конфигурации, поэтому вы не можете использовать выражения оболочки для расширения переменных. Хотя есть патч, который позволяет это делать,%($PATH)
и он обсуждался в списках рассылки еще в 2011 году, но AFAIK он все еще не включен в основное дерево исходных текстов. В качестве обходного пути вы можете создать сценарий, который будет настраивать среду и выполнять команду, указанную в аргументах. Тогда вы просто запускаете сценарий изsupervisord
подобногоcommand /usr/local/bin/setup_env_master.sh program_name arguments
exec server --args
. Вы видите это в начинающих рабочих местах неизменно.Ответы:
Эта функция была недавно добавлена в Supervisor
среда = PATH = "/ главная / сайт / среда / мастер / бен:% (ENV_PATH) s"
https://github.com/Supervisor/supervisor/blob/master/supervisor/skel/sample.conf#L8
Смотрите также /programming/12900402/supervisor-and-environment-variables
источник
Я ознакомился с документацией и согласен с Дмитрием.
Текущий ответ: супервизор не делает этот каталог, но поможет создание сценария оболочки.
источник