環境
- DevContainer
- guard-rspec インストール済み
事象
guardは問題なくインストールして起動できたが、rails・Rspec関連ファイルを保存しても反応なし。Guardfileを保存すると反応がある。
解決方法
Guardをポーリングモードで起動
$ bundle exec guard -p
ポーリングモードとは
分かりやすい記事があったので、貼っておきます:
システムを安定稼働させるために必要な「ポーリング」とは?
Guardコマンドについて
公式:Command-line-options-for-Guard
所感
ポーリングについて知ることができたが、DevContainer内でどんな不具合があってポーリングモードじゃないと動かないのかまでは分からなかった(もし分かる方がいたら教えてください)。
弊環境だと、controllerのテストディレクトリがspec/requests
になっている。それも相まって、動かない原因を突き止めるのに時間がかかった。どの環境でも同じパスそうで、自動生成されるGuardfileにwatchされてるapp/config/routes.rb
ファイルでctrl + s
するのがおすすめ。