私はまったく同じ問題を抱えています。
私のreleasesフォルダーには何もありません(まったく-私のデプロイコールドはロールバックし続けます)。
私のgemfile.lockはSubversionにチェックインされています。
私は得る:
** [out :: localhost] The --deployment flag requires a Gemfile.lock. Please make sure you have checked your Gemfile.lock into version control before deploying.
ロールバックを停止して、実行しようとしたときにリリースフォルダーがどのように表示されるかを確認する方法はありますか?
cd /var/qlarity/releases/20130222003607 && bundle install --gemfile /var/qlarity/releases/20130222003607/Gemfile --path /var/qlarity/shared/bundle --deployment --quiet --without development test
後で....
次のようにコードをコメントアウトすることで、ロールバックを防ぐことができることがわかりました。
gems\capistrano-2.14.1\lib\capistrano\recipes\deploy.rb
task :update_code, :except => { :no_release => true } do
# on_rollback { run "rm -rf #{release_path}; true" }
strategy.deploy!
finalize_update
end
これにより、リリースフォルダーを調べることができ、Gemfile.lockが含まれていませんでした。Railsプロジェクトのファイル構造に不要なフォルダーができてしまったので、代わりに
myapp/trunk/app
myapp/trunk/config
...
myapp/trunk/Gemfile
私は持っていた
myapp/trunk/myapp/app
myapp/trunk/myapp/config
...
myapp/trunk/myapp/Gemfile
これは、Gemfileを含むフォルダーになってしまったことを意味します
releases/nnnn/myapp
バンドルはでGemfileを探していました
releases/nnnn
Capistranoの設定をから変更したとき
deploy.rb
set :repository, "file:///D:/_SVN//myapp/trunk"
に
deploy.rb
set :repository, "file:///D:/_SVN//myapp/trunk/myapp"
今、すべてが良いです。本当に次にフォルダ構造を修正することを検討する必要があります!