0

私はカピストラーノを使用しています。そして、いつでもジェムをインストールせずにサーバーに新しくデプロイすると、カピストラーノは実行を試みます

いつでも --clear-crontab

rake gems:install コマンドが実行される前に、このコマンドが deploy_code の後に実行されることは明らかですが、gem をインストールする私のコマンド (以下) も実行されます。

after "deploy:update_code", "deploy:symlink_config"

deploy.task :symlink_config, :roles => :app do
  # create a symlink to the database.yml file located in the shared_path
  run "ln -nsf #{shared_path}/config/database.yml #{current_release}/config"

  # install any missing gems
  run "cd #{current_release} && sudo rake gems:install --trace RAILS_ENV=#{rails_env}"

  # migrate the database
  run "cd #{current_release} && rake db:migrate --trace RAILS_ENV=#{rails_env}"
end

これらのタスクを注文する方法はありますか?

4

1 に答える 1

0

私がやったのはrequire "whenever/capistrano"、「自動」デプロイを避けるために config\deploy.rb から を削除することです。代わりに、--clear-crontabandを実行するタスクを追加しました--update-crontab。これは、設定した順序で実行されるため機能します。

私はこの投稿に基づいています。これは、わずかに異なる問題を扱っていますが、解決策は同じです - カピストラーノとの「自動」統合を使用しないでください。

于 2012-08-13T15:49:32.733 に答える