Skip to content

Merge pull request #137 from solve-ease/vercel/react-server-component… #99

Merge pull request #137 from solve-ease/vercel/react-server-component…

Merge pull request #137 from solve-ease/vercel/react-server-component… #99

Workflow file for this run

name: Node.js CI
on:
push:
branches: [ main, develop ]
paths:
- 'optiblogai-site/**'
- '.github/workflows/ci.yml'
pull_request:
branches: [ main, develop ]
paths:
- 'optiblogai-site/**'
- '.github/workflows/ci.yml'
defaults:
run:
working-directory: ./optiblogai-site
jobs:
lint-and-test:
runs-on: ubuntu-latest
strategy:
matrix:
node-version: [18.x, 20.x]
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v4
with:
node-version: ${{ matrix.node-version }}
cache: 'npm'
cache-dependency-path: './optiblogai-site/package-lock.json'
- name: Install dependencies
run: npm ci
- name: Run ESLint
run: npm run lint
- name: Check TypeScript types
run: npx tsc --noEmit
- name: Run tests (if test script exists)
run: |
if npm run | grep -q "test"; then
npm test
else
echo "No test script found, skipping tests"
fi
env:
CI: true
- name: Build application
run: npm run build
- name: Upload build artifacts
uses: actions/upload-artifact@v4
if: matrix.node-version == '20.x'
with:
name: build-files
path: ./optiblogai-site/.next/
retention-days: 7