なぜ書いたか?
数多くある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で上書きしてしまった等クリティカルなミスをしないためにも!