Skip to content

chore: downgrade jsdom and related dependencies #43

chore: downgrade jsdom and related dependencies

chore: downgrade jsdom and related dependencies #43

name: PR Check - Backend
permissions:
contents: read
on:
pull_request:
branches: ["main"]
paths:
- "backend/src/**"
- "backend/test/**"
- "backend/tsconfig.json"
- "backend/eslint.config.*"
- "backend/nest-cli.json"
- "backend/pnpm-lock.yaml"
- ".github/workflows/pr-check-backend.yml"
push:
branches: ["main"]
paths:
- "backend/src/**"
- "backend/test/**"
- "backend/tsconfig.json"
- "backend/eslint.config.*"
- "backend/nest-cli.json"
- "backend/pnpm-lock.yaml"
- ".github/workflows/pr-check-backend.yml"
workflow_dispatch:
jobs:
check:
runs-on: ubuntu-latest
defaults:
run:
working-directory: backend
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Setup pnpm
uses: pnpm/action-setup@v4
with:
version: 10
- name: Setup Node.js (latest)
uses: actions/setup-node@v4
with:
node-version: latest
cache: "pnpm"
cache-dependency-path: backend/pnpm-lock.yaml
- name: Setup pnpm
uses: pnpm/action-setup@v3
with:
version: latest
- name: Install dependencies
run: pnpm install --frozen-lockfile
- name: Create .env file for tests
run: |
cat <<EOF > ../.env
NODE_ENV=test
SERVER_PORT=3001
EOF
- name: Install puppeteer dependencies
run: npx puppeteer browsers install chrome
- name: Run prettier formatting check
run: pnpm format:check
- name: Run ESLint
run: pnpm lint
- name: Run unit tests
run: pnpm test:verb:cov -u
- name: Run E2E
run: pnpm test:e2e --runInBand --detectOpenHandles --forceExit
- name: Build the project
run: pnpm build
- name: Check if dist directory exists
run: |
if [ ! -d "dist" ]; then
echo "Error: dist directory does not exist."
exit 1
fi