jsbundling-railsとcssbundling-rails両方に修正が入りました。
- Add bin/dev via foreman to run multiple processes · rails/jsbundling-rails@91d8d2b · GitHub
- Add bin/dev to run multiple processes · rails/cssbundling-rails@1ed4dc5 · GitHub
ポイントは次の処理です。
if Rails.root.join("Procfile.dev").exist? append_to_file "Procfile.dev", "js: yarn build --watch" else say "Add default Procfile.dev" copy_file "#{__dir__}/Procfile.dev", "Procfile.dev" say "Ensure foreman is installed" run "gem install foreman" end
jsbundling-railsの場合、Procfile.dev
ファイルがすでに存在すれば、起動コマンドjs: yarn build --watch
を追加します。
無ければProcfile.dev
ファイルをコピーしてforeman
をインストールします。
発端は次のissueです。
JavaScriptバンドラーとCSSプロセッサを同時に起動するときにどうしたらいいんだ?というissueです。
npmパッケージのconcurrentlyを使う案と、gemのforemanを使う案が出ています。 DHHからのコメントは、まだ、ありませんが、foremanを使うことにしたようです*1。 foremanはrubyで書かれていますし、Ruby on Railsのユーザーには馴染みがあって良さそうです。
てか、foremanて久しぶりに聞きました。まだ、生きてたんですね・・・