Skip to content

feat(FON-24): adds nomination file outcome #507

feat(FON-24): adds nomination file outcome

feat(FON-24): adds nomination file outcome #507

name: Integration checks
on:
pull_request:
types: [opened, synchronize]
jobs:
build:
timeout-minutes: 5
environment: ci
runs-on: ubuntu-latest
env:
TZ: Etc/UTC
DATABASE_URL: postgresql://fondation:secret@localhost:5435/fondation
COOKIE_SECRET: "secret-48b86b07-8668-4e1d-86b8-ee62e97fec7e"
ORIGIN_URL: http://localhost:3000
FRONTEND_ORIGIN_URL: http://localhost:5173
S3_ACCESS_KEY: fondation
S3_SECRET_KEY: fondation-secret
S3_BUCKET: sandbox-csm-fondation-reports-context
S3_REGION: eu-west-2
S3_FORCE_PATH_STYLE: "true"
S3_ENDPOINT: http://localhost:9000
services:
postgres:
image: postgres:13.2
env:
POSTGRES_USER: fondation
POSTGRES_PASSWORD: secret
POSTGRES_DB: fondation
ports:
- 5435:5432
options: >-
--health-cmd pg_isready
--health-interval 10s
--health-timeout 5s
--health-retries 5
minio:
image: ghcr.io/betagouv/fondation-ci-minio:2025-11-11
env:
MINIO_ROOT_USER: ${{ env.S3_ACCESS_KEY }}
MINIO_ROOT_PASSWORD: ${{ env.S3_SECRET_KEY }}
ports:
- 9000:9000
steps:
- uses: actions/checkout@v4
- uses: pnpm/action-setup@v4
with:
version: 10
- name: Use Node.js
uses: actions/setup-node@v4
with:
node-version: "20.9.0"
cache: "pnpm"
- name: Install dependencies
run: pnpm install --frozen-lockfile --ignore-scripts
- name: Build the shared models, necessary for the type checks
run: pnpm --filter shared-models build
- name: Migrate Prisma
run: pnpm run --filter api prisma migrate deploy
- name: Generate prisma
run: pnpm --filter api prisma generate --sql --config prisma.config.ts
- name: Types check
run: pnpm types:check
- name: Lint
run: pnpm lint:check
- name: Format
run: pnpm format:check
- name: Create buckets if necessary
run: node apps/api/scripts/init-buckets.js
- name: Test
run: pnpm test:all
- name: Build
run: pnpm build