LoginSignup
1
2

More than 1 year has passed since last update.

22' 10/14リリースのFirebase Cloud-Functions SDK v4からAdmin SDK v9がサポート終了された

Last updated at Posted at 2022-10-20

Cloud-Functions SDKをv3→v4にアップデートした時に、Breaking Changesの対応をしたので共有します

TL;DR

Firebase Cloud Function SDKをv3→v4にアップデートしたことに伴い、Admin SDKのv9がドロップされた。
Admin SDKをv9→v11にアップデートしたことで解決した。

問題

最近Firebase関連のパッケージを最新版にアップデートした時に以下の問題が起きました。

例えば、Cloud FunctionsからFirestoreのドキュメントを監視するコードがありました。

exports.onDocWriteTriggerThatFails = functions.firestore
    .document("collection/{doc}")
    .onWrite((change, context) => {

Firestore Emulator Suiteでテストしたところ、エラーを吐いて失敗します:

(一部省略)

function[region-onDocWriteTriggerThatFails]
TypeError: firebaseApp.getOrInitService is not a function
    at Object.getFirestore
    at beforeSnapshotConstructor
    at changeConstructor
    at cloudFunction
    at /Users/{...}/functionsEmulatorRuntime.js:516:16
    at runFunction
    at runBackground
    at processBackground
    at /Users/{...}/functionsEmulatorRuntime.js:690:27
    at Layer.handle [as handle_request]

Cloud-Functions SDK v4のBreaking Changes

リリースノートを見ると、Admin SDKのv8, v9がサポート終了したとのことでした。
このリリースは v4.0.0 October 14, 2022と、かなり最近の出来事です。

Dropped support for Admin SDK versions 8 and 9. Update with npm install firebase-admin@latest --save.

リリースノートの指示に従い、Admin SDKを最新版のv11にしたところ、上記の問題は解決しました。

npm install firebase-admin@latest --save

最後に

Firebase関係のパッケージはこまめにアップデートすることが必要だと感じました。
また、検索しても見つからない問題は、リリースノートを見たら解決することもあるようです。

この記事が誰かの助けになれば幸いです!それでは、良いFirebaseライフを!

1
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
2