Firebase
Firestore

FirebaseCLIのCommand集


なぜ書いたか?

数多くあるFirebaseの機能の一つ"Cloud Functions"を使用して実装することがあり

そこで使用したCommandをまとめておこうと思い書いてみました。

なのでDatabase系のCommandは含まれておりませんmm


Firebase CLIとは?

firebase CLI(Command Line Interface)

Firebaseのプロジェクトの管理、表示、デプロイが行えます。


Command集


firebase init

Firebaseプロジェクトを作成

使用するfirebaseプロジェクトのaliasとかもここで付けれる


firebase login

GoogleAccoutでログインを行います

Accoutと紐づいているFirebaseプロジェクトが表示


firebase logout

Firebase CLIからログアウトを行う


firebase list

Accoutに紐付く全てのfirebaseプロジェクトを表示

Name(プロジェクト名)、プロジェクトのID,Permissionの3つが表示されます


firebase use

deploy先に選択できるfirebaseプロジェクト表示


firebase use [alias]

deploy先を選択


firebase use --add

deploy先に新しく既存firebaseプロジェクトを追加

使用するfirebaseプロジェクトのaliasとかもここで付けれる


firebase use --unalias

既存のaliasを削除


firebase target

deploy先のfirebaseプロジェクト表示


firebase deploy

hosting、functions、database、storage、firestoreの5つがdeploy先に指定しているFirebaseプロジェクトにdeployされる

ここが割と要注意で何でもかんでもこのコマンドでは危ない・・・


firebase deploy --only [hosting、functions、database、storage、firestore]

onlyオプションで指定したものだけがdeployされる

例えば以下の場合はfunctionsのみdeployされます

firebase deploy --only functions


firebase deploy --only functions:[functionName]

以下Commandとの違いはfunctionNameに指定した関数のみがdeployされます

firebase deploy --only functions


firebase functions:log

function全てのログを確認


firebase functions:log --only [functionName]

functionNameに指定した関数のログのみを表示


functions:config:get

Cloud Functionsのランタイム設定値を取得


functions:config:set

Cloud Functionsのランタイム設定値を保存


functions:config:unset [key]

Cloud Functionsのランタイム設定値をkeyを指定して削除


FirebaseCLIを使用して思ったこと

deploy時はshellでFirebase CLIのCommandをまとめて[Y/n]確認を挟みながら行いましょうということ。

大きく感じたのは2点

・deploy先の確認を行おう

・firebase deployを実行して良いのか(--onlyが必要じゃないのか?の確認)

今の環境ではdev,prodのように本番と開発で2つのFirebaseプロジェクトが存在してました。

そこで、Deploy先をうっかりprodにしてしまった、DBのSecurityRulesをdeployで上書きしてしまった等クリティカルなミスをしないためにも!