ウェブアプリの開発中はファイルを変更するたびにforemanにきちんと再起動してほしいんだけど?の回答がへ〜と思ったメモ

へ〜、とおもったのでメモ。
stackoverflowにウェブアプリの開発中はファイルを変更するたびにforemanに再起動してほしいんだけどどうしたらいい?という質問があって、その方法がなかなか良いなと思ったのでメモ。
これが今までforeman使ってこなかった報いか。。。

やり方

production 用の .env と、development 用の dev.env を作って、軌道スクリプトも環境変数として扱っちゃいなよ!というもの。
具体的には

@ .env

WEB=node app.js

@ dev.env

WEB=supervisor app.js

@ Procfile

web: $WEB

と書くことでforemanの起動時に -e オプションで渡した *.env ファイルのWEB環境変数からキックしてくれるというもの。開発環境なら以下のような感じ。

foreman start -e dev.env

便利〜