質問: RBENV_VERSION="2.2.3" Capistrano3 Aws、EC2 Amazon Linux AMI ローカル環境からデプロイ ------------- $ bundle exec cap production deploy bundle install や db:create あたりのコマンド実行されていることをログから確認できておりますが、 終盤あたりで次のエラーが表示されました。 エラー内容 ------ Running /usr/bin/env mv /project_dir/releases/current /project_dir/ ``` cap aborted! SSHKit::Runner::ExecuteError: Exception while executing as hogehoge@11.111.111.111: mv exit status: 1 mv stdout: mv: ディレクトリ `/project_dir/current' をディレクトリ以外で上書きできません mv stderr: Nothing written SSHKit::Command::Failed: mv exit status: 1 mv stdout: mv: ディレクトリ `/project_dir/current' をディレクトリ以外で上書きできません mv stderr: Nothing written ``` ls -ll ------- $ pwd => project_dir/ ``` drwxrwxrwx 4 hoge hoge 4096 Jun 5 06:23 current drwxrwxrwx 28 hoge hoge 4096 Jun 7 12:09 releases drwxrwxr-x 7 hoge hoge 4096 Jun 5 02:56 repo drwxrwxrwx 8 root root 4096 Jun 7 08:33 shared ``` やったこと ------ 権限周りの問題かと思い `sudo chown -R hoge:hoge releases` などをやりました。 また、今回のhoge というユーザーには visudoで `ALL=(ALL) NOPASSWD:ALL` にしております。 しかしエラーは解消されなかったため質問させていただきました。 よろしくお願いします。
回答: エラーを見るとmvの上書きエラーです。 capistrano が最後にリリース最新をcurrentに配置しようとしているのかと思いますが、 移動先にディレクトリがあるため配置できていないようです。 シンボリックリンクとするか、配置先を削除するよう変更してみてはどうでしょうか。