Skip to content

A GitHub Action to deploy to Firebase Functions and Hosting

License

Notifications You must be signed in to change notification settings

polaroid/deploy-firebase-functions

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

47 Commits
 
 
 
 

Repository files navigation

Deploy to Firebase Functions and Hosting for Node

A GitHub Action to deploy to Firebase Cloud Functions and Firebase Hosting for Node.

  • Make sure that you checkout the repository using the actions/checkout action
  • Make sure that you have the firebase.json file in the repository
  • To obtain the Firebase token, run firebase login:ci on your local computer and store the token as the FIREBASE_TOKEN secret
  • Specify the Firebase project name in the FIREBASE_PROJECT env var

Workflow examples

Node 20 (Preview)

Deploy the main branch when a commit is pushed to it:

name: Deploy the main branch
on:
  push:
    branches:
      - main
jobs:
  main:
    name: Deploy to Firebase
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v2
    - uses: polaroid/deploy-firebase-functions@v20.0.0
      env:
        FIREBASE_TOKEN: ${{ secrets.FIREBASE_TOKEN }}
        FIREBASE_PROJECT: firebase-project-id

Deploy only when a tag starts with v is pushed:

name: Deploy a tag
on:
  push:
    tags:
      - v*
jobs:
  main:
    name: Deploy to Firebase
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v2
    - uses: polaroid/deploy-firebase-functions@v20.0.0
      env:
        FIREBASE_TOKEN: ${{ secrets.FIREBASE_TOKEN }}
        FIREBASE_PROJECT: firebase-project-id

Node 18

Deploy the main branch when a commit is pushed to it:

name: Deploy the main branch
on:
  push:
    branches:
      - main
jobs:
  main:
    name: Deploy to Firebase
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v2
    - uses: polaroid/deploy-firebase-functions@v18.0.0
      env:
        FIREBASE_TOKEN: ${{ secrets.FIREBASE_TOKEN }}
        FIREBASE_PROJECT: firebase-project-id

Deploy only when a tag starts with v is pushed:

name: Deploy a tag
on:
  push:
    tags:
      - v*
jobs:
  main:
    name: Deploy to Firebase
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v2
    - uses: polaroid/deploy-firebase-functions@v18.0.0
      env:
        FIREBASE_TOKEN: ${{ secrets.FIREBASE_TOKEN }}
        FIREBASE_PROJECT: firebase-project-id

About

A GitHub Action to deploy to Firebase Functions and Hosting

Resources

License

Stars

Watchers

Forks

Packages

No packages published