[解決] capistranoでcopy_excludeが動いた
昨日、 capistranoでcopy_excludeが動かない という記事を書きましたが、追加調査を行い無事に解決することができました。
結論:copy_dir の設定が必要 デフォルトだと deploy_via を copy にした場合、/tmp 以下にコピーされるのですが、それだとうまくいかないようです。
デプロイ実行ユーザのホームディレクトリに tmp ディレクトリを作成し、そこを copy_dir で設定することで正しくデプロイできるようになりました。
不要な隠しファイルやscssディレクトリを除きたかったので下記のように設定しました。
# config/deploy.rb
set :deploy_via, :copy
set :copy_dir, "/home/homepage/tmp"
set :copy_exclude, [".git", "**/.git", ".DS_Store", ".svn", "**/.svn", "**/scss", "public/**/config.rb"]