Skip to content

build(deps): bump the npm_security group across 1 directory with 2 updates #392

build(deps): bump the npm_security group across 1 directory with 2 updates

build(deps): bump the npm_security group across 1 directory with 2 updates #392

Workflow file for this run

name: CI
on:
workflow_dispatch:
push:
branches: [main]
paths:
- 'src/**'
- 'prisma/**'
- 'package.json'
- 'package-lock.json'
- 'tsconfig.json'
- 'next.config.*'
- 'vitest.config.*'
- 'docker/**'
- '.github/workflows/ci.yml'
pull_request:
branches: [main]
paths:
- 'src/**'
- 'prisma/**'
- 'package.json'
- 'package-lock.json'
- 'tsconfig.json'
- 'next.config.*'
- 'vitest.config.*'
- 'docker/**'
- '.github/workflows/ci.yml'
concurrency:
group: ci-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: true
permissions:
contents: read
env:
NODE_VERSION: "22"
jobs:
lint:
name: Lint & Type Check
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
with:
persist-credentials: false
- name: Setup Node.js
uses: actions/setup-node@820762786026740c76f36085b0efc47a31fe5020 # v7.0.0
with:
node-version: ${{ env.NODE_VERSION }}
cache: "npm"
- name: Install dependencies
run: npm ci
- name: Generate Prisma client
run: npx prisma generate
env:
DATABASE_URL: "postgresql://mock:mock@localhost:5432/mock"
- name: Type check
run: npx tsc --noEmit
- name: Lint
run: npm run lint
test:
name: Test
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
with:
persist-credentials: false
- name: Setup Node.js
uses: actions/setup-node@820762786026740c76f36085b0efc47a31fe5020 # v7.0.0
with:
node-version: ${{ env.NODE_VERSION }}
cache: "npm"
- name: Install dependencies
run: npm ci
- name: Generate Prisma client
run: npx prisma generate
env:
DATABASE_URL: "postgresql://mock:mock@localhost:5432/mock"
- name: Run tests with coverage
run: npx vitest run --coverage
- name: Upload coverage to Codecov
if: github.event_name == 'push'
uses: codecov/codecov-action@fb8b3582c8e4def4969c97caa2f19720cb33a72f # v6
with:
fail_ci_if_error: false
build:
name: Build
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
with:
persist-credentials: false
- name: Setup Node.js
uses: actions/setup-node@820762786026740c76f36085b0efc47a31fe5020 # v7.0.0
with:
node-version: ${{ env.NODE_VERSION }}
cache: "npm"
- name: Install dependencies
run: npm ci
- name: Generate Prisma client
run: npx prisma generate
env:
DATABASE_URL: "postgresql://mock:mock@localhost:5432/mock"
- name: Build application
run: npm run build
env:
NEXT_TELEMETRY_DISABLED: 1
DATABASE_URL: "postgresql://mock:mock@localhost:5432/mock"
summary:
name: CI Summary
runs-on: ubuntu-latest
needs: [lint, test, build]
if: always()
steps:
- name: Check results
run: |
if [ "${{ needs.lint.result }}" != "success" ] || \
[ "${{ needs.test.result }}" != "success" ] || \
[ "${{ needs.build.result }}" != "success" ]; then
echo "CI failed"
exit 1
fi
echo "All checks passed"