문제

나는 레일의 EC2로 생성 된 EC2 인스턴스에서 실행할 때마다 얻으려고 노력했습니다.

Capistrano로 배포하면 Crontab이 작성되었음을 나타냅니다. 그러나 서버에 로그인하여 Crontab -L을 실행하면 변경되지 않은 것 같습니다.

릴리스 폴더로 들어가서 -write -crontab이있을 때마다 수동으로 실행되면 crontab -l을 실행하면 올바르게 업데이트됩니다.

이것을 일으킬 수있는 아이디어가 있습니까?

Capistrano는 오류를 나타내지 않으므로 디버그하는 방법을 모르고 10 억 순열 및 조합을 시도했으며 아무것도 변경되지 않았습니다.

도움이 되었습니까?

해결책 2

namespace :deploy do
  desc "write the crontab file"
  task :write_crontab, :roles => [:db_admin] do  
    run "cd #{release_path} && sudo -u root  whenever --write-crontab #{application}"
  end  
end

또는 이것에 도움이 될 때마다 -사용자 옵션도 있습니다.

다른 팁

캡 배포 파일에서 Capistrano 명령을 다음과 같이 할 때마다 필요할 수 있어야합니다.

'언제든지/capistrano'가 필요합니다.

Bundler를 사용하는 경우 다음을 추가해야합니다.

SET : Whenow_Command, '언제든지 번들 exec'

이것은 OP와 관련이 없지만 이것에 따르면 문제, Capistrano 2.11.1은 문제를 해결하기 위해 0.7.3 일 때마다 필요합니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top