cap3付近、DSL祭りなので初期値や設定可能な値など毎回ソースみて確認する必要ある。
んで、ちゃんとコードとドキュメントを読めば
何も困ることはないという当たり前のことを学んだので忘れないうちにメモ
Capfile
require 'capistrano3/unicorn'
Gemfile
gem 'unicorn'
で使えるようにして
cap production unicorn:start
をしてもうんともすんとも言わんということになったが
そもそも
unicorn.rake
namespace :load do
task :defaults do
set :unicorn_pid, -> { File.join(current_path, "tmp", "pids", "unicorn.pid") }
set :unicorn_config_path, -> { File.join(current_path, "config", "unicorn", "#{fetch(:rails_env)}.rb") }
set :unicorn_roles, -> { :app }
set :unicorn_options, -> { "" }
set :unicorn_rack_env, -> { fetch(:rails_env) == "development" ? "development" : "deployment" }
set :unicorn_restart_sleep_time, 3
end
end
unicorn_roles
はデフォルトでapp
が指定されている
ので README.md に
You can override the defaults by set :unicorn_example, value in the config/deploy.rb or config/deploy/ENVIRONMENT.rb capistrano deployment files.
って書いてあるので
set :unicorn_roles, "hoge"
みたいな設定をconfig/deploy.rb
かconfig/deploy/ENV.rb
に書く
ちなみに
current_path/tmp/pids/unicorn.pid
みたいなものは
deploy.rb のテンプレート
この辺に書いてあって
cap install
した時に生成されるconfig/deploy.rb
にコメントアウトで記述されているので
コメントアウトを解除すればよしなに作成してくれるので自分でつくる必要はない。
カスタマイズしたければこの辺をよしなにする。
READMEちゃんと読んでコードで確認すれば一瞬でわかることに無駄にはまった。
基本大切にしていこう