Skip to content
You're viewing an older version of this GitHub Action. Do you want to see the latest version instead?
upload-cloud

GitHub Action

Firebase Deployment

v3.2.0

Firebase Deployment

upload-cloud

Firebase Deployment

A GitHub Action to deploy to Firebase

Installation

Copy and paste the following snippet into your .yml file.

              

- name: Firebase Deployment

uses: sws2apps/[email protected]

Learn more about this action in sws2apps/firebase-deployment

Choose a version

CI CD

Firebase Deployment

A GitHub Action to deploy firebase hosting and functions together.

  • Make sure you have the firebase.json file in the root repository, or set a custom path to look for it using the config input.
  • Set the workloadIdentityProvider and serviceAccount inputs to authenticate to Google Cloud. Create these values by following the guides on Setting up Workload Identity Federation. Alternatively, you can try using the CLI @sws2apps/github-gcloud-cli to automate the creation of these values.
  • Set the project name in the project input.

Example Usage

name: Deploy to Firebase

on:
  push:
    branches:
      - main

permissions: read-all

jobs:
  main:
    name: Build and Deploy
    runs-on: ubuntu-latest

    permissions:
      contents: 'read'
      id-token: 'write'

    steps:
      - name: Checkout
        uses: actions/checkout@v3

      - name: Deploy to Firebase
        uses: sws2apps/firebase-deployment@main #consider using pin for dependabot auto update
        with:
          workloadIdentityProvider: ${{ secrets.WORKLOAD_IDENTITY_PROVIDER }}
          serviceAccount: ${{ secrets.SERVICE_ACCOUNT }}
          project: github-workflow-sws
          config: 'frontend/firebase.json' #optional
          function: true #optional & boolean
          hosting: true #optional & boolean
          project: 'my-firebase-project' #required