飽き性の頭の中

FirestoreとStorageのセキュリティルールをGitHub Actionsで自動デプロイする

FirestoreとStorageのセキュリティルールをGitHub Actionsで自動デプロイする

tawachan
tawachan

GitHub Actions を使って、Firestore と Storage のセキュリティルールを自動デプロイするようにしたのでメモする。

w9jds/firebase-actionを使って、Firebase CLI を実行するようにしている。

このあたりを参考にさせていただいた。

GitHub Actions の設定ファイルはこんな感じになった。

   name: DEV - Apply Firebase Security Rules
on:
  - workflow_dispatch
  - pull_request

jobs:
  apply-security-rules:
    name: Apply Firebase Rules (Development)
    runs-on: ubuntu-latest
    steps:
      - name: Checkout Repo
        uses: actions/checkout@v3
      - name: Apply
        uses: w9jds/firebase-action@master
        with:
          args: deploy
        env:
          FIREBASE_TOKEN: ${{ secrets.FIREBASE_TOKEN }}
          PROJECT_ID: ${{ env.FIREBASE_PROJECT_ID }}

args: deploy のところは、デプロイ対象に応じて、--only firestore:rules--only storage:rules などを指定することもできるが、hosting や functions を使っていないので、全部デプロイするようにしている。

本番用には、CI の実行タイミングとPROJECT_IDを変えて、別の設定ファイルを作成すればよい。

関連記事