rvmsudo foreman exporta o upstart sem pedir senha

1

Meu capistrano deploy.rb tem um comando foreman export para um aplicativo rails no Ubuntu 10.04 Então, durante a implantação, eu quero exportar o capataz para o script upstart. Mas fazendo isso, o comando rvmsudo foreman export ... pede senha de root e não posso fazer nada. Pesquisou muito e tentou vários ajustes, mas nada funcionou.

 * executing 'foreman:export'
 * executing "cd /home/deploy/zappy/releases/20111019175422 && rvmsudo foreman export upstart /etc/init -a zappy -u deploy -f ./Procfile.production -c worker=1 redis=1 -l /home/deploy/zappy/releases/20111019175422/log/foreman"
   servers: ["173.255.205.237"]
   [173.255.205.237] executing command
** [out :: 173.255.205.237] [sudo] password for deploy:

Qual poderia ser a solução para fazê-lo sem senha?

    
por Autodidact 19.10.2011 / 20:47

1 resposta

3

Eu tive esse mesmo problema / pergunta. Aqui está um trecho do meu arquivo deploy.rb de trabalho. Nota: Eu alterei /etc/sudoers para permitir que meu usuário de implementação execute o comando sudo mv...

foreman_temp = "/tmp/#{application}-foreman"
run [
  "mkdir -p #{foreman_temp}",
  "cd #{release_path}",
  "/usr/local/rvm/gems/ruby-1.9.2-p290/bin/bundle exec foreman export upstart #{foreman_temp} -a #{application} -u #{user} -l #{shared_path}/log -f Procfile",
  "sudo mv #{foreman_temp}/#{application}*.conf /etc/init/",
  "rm -rf #{foreman_temp}"
].join('&&')
    
por 25.10.2011 / 06:45