Skip to content

Merge pull request #1035 from kaynaomi-oss/feature/883-geo-block-poli… #1

Merge pull request #1035 from kaynaomi-oss/feature/883-geo-block-poli…

Merge pull request #1035 from kaynaomi-oss/feature/883-geo-block-poli… #1

Workflow file for this run

name: Node.js version matrix
on:
push:
branches:
- main
paths:
- 'backend/**'
- 'frontend/**'
- '.github/workflows/node-matrix.yml'
pull_request:
branches:
- main
paths:
- 'backend/**'
- 'frontend/**'
- '.github/workflows/node-matrix.yml'
permissions:
contents: read
jobs:
backend:
name: Backend (Node ${{ matrix.node-version }})
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
node-version: ['20', '22']
defaults:
run:
working-directory: backend
env:
REDIS_HOST: 127.0.0.1
REDIS_PORT: 6379
NODE_ENV: test
steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
- name: Start Redis
run: |
sudo apt-get update -qq
sudo apt-get install -y redis-server
sudo systemctl start redis-server
redis-cli ping
- uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6.4.0
with:
node-version: ${{ matrix.node-version }}
cache: npm
cache-dependency-path: backend/package-lock.json
- name: Install dependencies
run: npm ci
- name: Generate Prisma client
run: npx prisma generate
- name: Build
run: npm run build
- name: Test
run: npm test
frontend:
name: Frontend (Node ${{ matrix.node-version }})
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
node-version: ['20', '22']
defaults:
run:
working-directory: frontend
env:
NEXT_PUBLIC_API_URL: https://api.example.com
steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
- uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6.4.0
with:
node-version: ${{ matrix.node-version }}
cache: npm
cache-dependency-path: frontend/package-lock.json
- name: Install dependencies
run: npm ci
- name: Build
run: npm run build
- name: Test
run: npm test