capistranoで同一サーバーにcopyで配置する時は注意

相当手間取った。

新しくしたサーバーにcapistranoでデプロイしようとしたら
途中で反応がなくなり、エラーも出ずに固まってしまう。

サイズが大きいこともありテストを重ねるのに時間がかかり
解決に非常に手間取ってしまった。

下記copyでのデプロイを設定している上で

set :deploy_via, :copy

capistranoを起動するサーバーとデプロイ先のサーバーが同じだった場合に
下記のように圧縮ファイルを同じ場所に転送しようとしてファイルが壊れることが原因だった。

sftp upload /tmp/20140828071729.tar.gz -> /tmp/20140828071729.tar.gz

解決策は、コピー先を適当な別の場所に指定する。

set :copy_remote_dir, "/var/tmp"

順を追えばすぐに解決できそうなものだったけど
サーバーが遅い&データが大きいことにより
sshが止まってしまったのが苦労の原因だった。


Categories:

Tags:


Comments

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA