Eu tenho um serviço com o WorkingDirectory=/srv/ctr/current
qual é um link simbólico.
Parece que o serviço não capta alterações no link simbólico quando reiniciado. O log de erros relata /srv/ctr/releases/69
como o local, mas /srv/ctr/current
aponta para /srv/ctr/releases/72
. Existe alguma maneira de obter o systemd para captar a nova alteração de diretório?
systemctl daemon-reload
? Pode desencadear uma releitura do link simbólico.ExecStartPre=/bin/pwd -P
ao seu serviço, recarregar / reiniciar o serviço e verificar os logs. Pelo menos, então você saberá se ele está systemd ou resque ...Respostas:
Possivelmente tente adicionar:
Environment = PWD=/srv/ctr/current
(BTW, muito feliz em ver alguém usando
/srv/*
seus serviços.)fonte
modifique o arquivo da unidade systemd para o seguinte:
fonte