awsマイクロサーバーにRuby on Railsプロジェクトを(capistranoで)デプロイしました。私は ruby 1.9.2-290 と rails 3.2.6 を使用しており、バンドラーも使用しています。opt/rails-project/lib/tasks/tasks.rake でタスクレーキを開発しました
namespace :myclass do
task "my-task" => :environment do
# do the stuff which work nicely if i enter my command line manually
end
end
これは私のcrontabでそれを呼び出す方法です:
*/3 * * * * cd /opt/rails-project/current && /opt/rails-project/shared/bundle/ruby/1.9.1/gems/rake-0.9.2.2/bin/rake myclass:my-task RAILS_ENV=production >> ~/logs-my-task.txt
ファイル ~/logs-my-task.txt が作成され、3 分ごとに更新されます。このファイルには capistrano からのバージョン リリースの情報のみが含まれており、私のタスク rake からの情報は含まれていません。
タスク レーキのコメントで述べたように、このコマンドを ssh 経由でサーバーで直接起動すると、タスク レーキが機能します...
昼夜を問わずウェブを検索しましたが、わかりません。
Rails から http_basic 認証を削除しようとしましたが、同じ問題が発生しました。
アイデアがあるといいのですが、助けてくれてありがとう!