Não consigo descobrir como anexar ao caminho padrão em uma configuração do programa supervisord.
Eu posso redefinir o caminho:
environment=PATH="/home/site/environments/master/bin"
Mas quando eu tento:
environment=PATH="/home/site/environments/master/bin:$PATH"
Vejo que a supervisora não avalia $PATH
.
O Google não ajudou muito nisso, por algum motivo, não acredito que sou a primeira pessoa a precisar disso.
O Supervisord deve ter suporte para isso, tem alguma idéia do que é?
supervisord
Prody
fonte
fonte
supervisord
não execute o shell para pré-processar variáveis no arquivo de configuração; portanto, você não pode usar expressões do shell para expandir variáveis. Embora exista um patch que permita fazer%($PATH)
isso, ele foi discutido nas listas de discussão em 2011, mas o AFAIK ainda não está incluído na árvore de origem da linha principal. Como solução alternativa, você pode criar um script que irá configurar o ambiente e executar um comando fornecido nos argumentos. Então você acabou de executar o script a partir dosupervisord
comocommand /usr/local/bin/setup_env_master.sh program_name arguments
exec server --args
. Você vê isso em trabalhos iniciados invariavelmente.Respostas:
Este recurso foi adicionado ao Supervisor recentemente
environment = PATH = "/ home / site / ambientes / master / bin:% (ENV_PATH) s"
https://github.com/Supervisor/supervisor/blob/master/supervisor/skel/sample.conf#L8
Consulte também /programming/12900402/supervisor-and-environment-variables
fonte
Revi a documentação e concordo com Dmitry.
A resposta atual é: supervisor não faz esse diretório, mas a criação de um script de wrapper ajudará.
fonte