• Add server nodes • Add more process types to app • Add/remove developers to the project "I can't remember how to start unicorn!" Wait, how do you use this hammer?
do run "unicorn -c #{current_path}/config/unicorn -E production #{current_path}/config.ru" end task :restart do run "kill -USR2 $(cat #{shared_path}/pids/unicorn. pid)" end task :stop do run "kill -QUIT $(cat #{shared_path}/pids/unicorn. pid)" end end $ cap deploy:restart
a series of capabilities: • Procfile to denote processes and commands. • Concurrency/Environment configuration. • Local runtime for all processes. • Export to server process manager of choice.
start [process] • Runs on top • Log to STDOUT • Color-coded output per process • Can also specify a single process name to run foreman run <command> • Run arbitrary command with the foreman configuration/env.