Skip to content

feat: add FPNV

feat: add FPNV #1018

Workflow file for this run

name: Continuous Integration
on: pull_request
jobs:
build:
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
python: ['3.9', '3.10', '3.11', '3.12', '3.13', 'pypy3.9']
steps:
- uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # 4.3.1
- name: Set up Python 3.13 for emulator
uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # 5.6.0
with:
python-version: '3.13'
- name: Setup functions emulator environment
run: |
python -m venv integration/emulators/functions/venv
source integration/emulators/functions/venv/bin/activate
pip install -r integration/emulators/functions/requirements.txt
deactivate
- name: Set up Python ${{ matrix.python }}
uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # 5.6.0
with:
python-version: ${{ matrix.python }}
- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install -r requirements.txt
- name: Test with pytest
run: pytest
- name: Set up Node.js 20
uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # 4.4.0
with:
node-version: 20
- name: Set up Java 21
uses: actions/setup-java@f2beeb24e141e01a676f977032f5a29d81c9e27e # 5.1.0
with:
distribution: 'temurin'
java-version: '21'
check-latest: true
- name: Install firebase-tools
run: npm install -g firebase-tools
- name: Run Database emulator tests
run: firebase emulators:exec --only database --project fake-project-id 'pytest integration/test_db.py'
- name: Run Functions emulator tests
run: firebase emulators:exec --config integration/emulators/firebase.json --only tasks,functions --project fake-project-id 'CLOUD_TASKS_EMULATOR_HOST=localhost:9499 pytest integration/test_functions.py'
lint:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # 4.3.1
- name: Set up Python 3.9
uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # 5.6.0
with:
python-version: 3.9
- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install -r requirements.txt
- name: Lint with pylint
run: ./lint.sh all