Error: Input required and not supplied: firebaseServiceAccount

公開日時
更新日時

GitHub Actionsを使ってFirebase Hostingへの自動デプロイを設定していたリポジトリである日を境に↓のエラーが発生するようになってしまった。

Run FirebaseExtended/action-hosting-deploy@v0
Error: Input required and not supplied: firebaseServiceAccount

Secretに設定しているfirebaseServiceAccountも特にいじっておらず原因が不明。

ここ最近pushを行っていないリポジトリだったので、適当なcommitを行いmainブランチにpushしてみたところエラーなくデプロイできた。

また、適当なPull Requestを作ってみたところ、こちらもエラーなくプレビュー環境がデプロイできた。

エラーはDependabotによって作成されたPull Requestのみで発生している模様。

解決策はまだ見つかっていないが、現状のDependabotによるPull Requestを一度Closeして、次のPull Requestが作成された際にどうなるかを確認することにする。

=> その後もDependabotのPRはエラーになることが判明。

↓のissueによると、GitHub ActionsのセキュリティアップデートでDependabotからはsecretsを読み出すことができなくなったとのこと。

workflow内でdependabotかどうかをif文で判定する処理を各箇所に組み込めば対応可能ではあるらしいが、workflowが複雑になってしまう。

解決策にはなっていないが、より良い対応方法が見つかるまでFirebase Hostingのプレビュービルドを無効化することにした。

参考


Related #firebase

SharedArrayBuffer updates in Android Chrome 88 and Desktop Chrome 92

クロスオリジン分離対応を実施

Firebase Emulator Suiteで起動しているFunctionsから本番のFirestoreにアクセスする

functionsのみエミュレータを使うようにするとできる

Firebase Functions呼び出し時に Error: function terminated. が発生した場合

firebase functions:logで詳細を確認できる

Cloud BuildでFirebase Hostingのデプロイを行う

リポジトリへのpush以外をトリガーにしたい場合に使用

Firebase FunctionsでonCallで実装しているにも関わらずCORSエラーが発生した場合

Cloud Functions(GCP)の管理画面を確認してみる

JestでFirestoreセキュリティルールのテストを書く

Github ActionsでCIを回せるようになった