-
Notifications
You must be signed in to change notification settings - Fork 2
/
action.yaml
46 lines (43 loc) · 1.63 KB
/
action.yaml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
name: 'Firebase Emulator Action'
description: 'Starts the Firebase Emulator Suite'
author: 'Invertase'
inputs:
firebase-tools-version:
description: 'Firebase Tools version to install'
required: false
default: 'latest'
emulators:
description: 'Comma-separated list of Firebase emulators to start (e.g., auth,firestore,functions)'
required: false
default: 'auth,firestore,functions,storage,database'
project-id:
description: 'The project ID to use for the Firebase Emulator Suite'
required: false
default: 'test-project'
max-retries:
description: 'The maximum number of retries to attempt when starting the Firebase Emulator Suite'
required: false
default: '3'
max-checks:
description: 'The maximum number of checks to attempt when starting the Firebase Emulator Suite'
required: false
default: '60'
wait-time:
description: 'The time to wait (in seconds) between checks when starting the Firebase Emulator Suite'
required: false
default: '1'
check-port:
description: 'The port to check for when starting the Firebase Emulator Suite'
required: false
default: '8080' # Firestore emulator default port
runs:
using: "composite"
steps:
- name: Install Firebase Tools
shell: bash
run: |
sudo npm i -g firebase-tools@${{ inputs.firebase-tools-version }}
- name: Start Firebase Emulator
shell: bash
run: |
chmod +x ./start-firebase-emulator.sh && ./start-firebase-emulator.sh ${{ inputs.emulators }} ${{ inputs.project-id }} ${{ inputs.max-retries }} ${{ inputs.max-checks }} ${{ inputs.wait-time }} ${{ inputs.check-port }}