🤯

CIで動かしているFirebase Emulatorsが突然落ちるようになった問題

2021/08/12に公開

CIで動かしているFirebase Emulatorsが突然落ちた

こんな感じのエラー
ついでにJestのテストがtimeoutしてた。
(emulatorへのアクセス部分が失敗するせい)

⚠  emulators: You are not currently authenticated so some features may not work correctly. Please run firebase login to authenticate the CLI.
i  emulators: Starting emulators: firestore
i  emulators: Shutting down emulators.

Error: No project active, but project aliases are available.

原因

本質的な原因はfirebase-toolsの破壊的な変更があったためだと思われます。
直接的な原因は、CIのymlファイルでバージョン指定せず
firebase-toolsをインストールしていたためです。

最初からバージョン指定するか、ちゃんとバージョンアップをし続けていれば起こらない問題でした。何も考えずに書いたコードは時間差で自分のリソースを奪っていく。。。反省します。

対策

バージョン指定せずにインストールしていた

yarn add firebase-tools

バージョン指定してインストール

yarn add 'firebase-tools@{任意のバージョン}'

ex

ci.yml
name: CI with Firebase
on:
  pull_request:
    types: [opened, synchronize]
    paths:
      - "hoge/path"
jobs:
  test:
   # 省略
   
    steps:
    - name: install firebase-tools
      run: yarn add 'firebase-tools@^9.16.1'

Discussion