😎

firebase functions:shellで追加した関数が読み込まれない

2022/01/24に公開

新しい関数を追加したはずなのに読み込まない

firebase functions のテストを実行するためにfirebase functions:shellコマンドを使っていたが関数追加時に何故か追加されなかった。
それどころか、ファイルの中身を全く別のものに変更しても以前の関数しかロードされず、少し困惑。

かなり初歩的なミスだが、コマンド実行時には何も表示されず若干ハマったので解決策を共有する。

解決方法

warning も含むエラーを全てなくす。

firebase deployコマンドを実行してみて理解。
開発中だったので使用していない変数を放置し eslint の warning は表示されていたものの、これらは関係ないものだと決めつけて無視していたのが原因だった。

warning であっても、functions のデプロイ時はコケる仕組みになっているみたい。
なので、warning も全て消した状態でなければエミュレータ側が前回の結果を保持して出力する模様。

まとめ

テストする時はnpm run build && firebase functions:shellを npm の alias に設定して実行すれば事前にエラーを吐き出すので幸せになれる。

Discussion