executando o compositor de upstart

1

Estou executando o Ubuntu 14.04.

Estou tentando criar um serviço capaz de implantar um aplicativo. O processo é muito simples:

  1. Eu tenho um script de nó escutando na porta 2133 para uma solicitação POST
  2. Quando esse script recebe uma solicitação, ele aciona um script bash que precisa clonar um repositório git
  3. O script bash deve executar um comando composer install para instalar as dependências do aplicativo.

Quando eu inicio meu script com node index.js , tudo funciona bem.

Eu, então, fiz um serviço iniciante, definido com o seguinte arquivo de configuração:

description "Service permettant le déploiement d'une application depuis bitbucket"
author "Mathieu Marteau"

start on filesystem runlevel [2345]
stop on shutdown
respawn
setuid mmarteau

exec /usr/bin/node /home/mmarteau/deploy/index.js

O serviço funciona bem, todo o meu arquivo bash está em execução, exceto pelo comando composer install .

Eu não tenho nada no /var/log/upstart/myservice.log .

Eu também tentei substituir o comando composer install pelo caminho completo: /usr/local/bin/composer install; , mas isso também não tem efeito.

Onde devo procurar resolver o meu problema?

Muito obrigado pela sua ajuda!

EDIT: Meu problema é resolvido quando eu substituo o composer install por sudo composer install . Eu não entendo porque tudo funciona quando eu lanço meu script de nó logado como mmarteau , mas ele precisa de um sudo com o serviço iniciante. Eu pensei que o setuid mmarteau era a linha necessária ...

    
por Hammerbot 19.07.2016 / 09:24

0 respostas