kinjouj.github.io

$HOME/.rake


Ruby

$HOME/.rakeというディレクトリを作ってそこに.rakeなRakefileを作ればどこででもタスクを実行できるらしいのでやってみた

$HOME/.rake/webrick.rake

task :server do
  rackupPid = Process.spawn("ruby -run -e httpd . -p 4000")
  trap("INT") {
    Process.kill(9, rackupPid) rescue Errno::ESRCH
    exit 0
  }
  Process.wait(rackupPid)
end

配備したあとで

rake server

  とやると普通に起動するっぽい。ちなみにこの機能を無効にするのはrakeの--no-system(-G)オプションをつけるとこの機能無効になる模様