Compare commits

..

1 Commits

Author SHA1 Message Date
b5007885ad fix(orchestrator): copy schema into orchestrator/prisma/ for local prisma generate
Some checks failed
ci/woodpecker/push/ci Pipeline failed
Prisma was climbing the directory tree to find a project root and landing at
/app/apps/ which has no package.json. Fix: copy the API schema directly into
apps/orchestrator/prisma/schema.prisma and run generate from within the
orchestrator package context using node_modules/.bin/prisma directly.

This keeps prisma generate fully self-contained within the orchestrator package
and avoids all cross-package project-root detection issues.
2026-03-07 09:59:58 -06:00
3 changed files with 10 additions and 8 deletions

View File

@@ -21,7 +21,7 @@ FROM base AS deps
COPY packages/shared/package.json ./packages/shared/ COPY packages/shared/package.json ./packages/shared/
COPY packages/config/package.json ./packages/config/ COPY packages/config/package.json ./packages/config/
COPY apps/orchestrator/package.json ./apps/orchestrator/ COPY apps/orchestrator/package.json ./apps/orchestrator/
# API schema is available via apps/orchestrator/prisma/schema.prisma symlink # (API prisma schema is copied in builder stage directly into orchestrator/prisma/)
# Copy npm configuration for native binary architecture hints # Copy npm configuration for native binary architecture hints
COPY .npmrc ./ COPY .npmrc ./
@@ -47,11 +47,11 @@ COPY --from=deps /app/packages/shared/node_modules ./packages/shared/node_module
COPY --from=deps /app/packages/config/node_modules ./packages/config/node_modules COPY --from=deps /app/packages/config/node_modules ./packages/config/node_modules
COPY --from=deps /app/apps/orchestrator/node_modules ./apps/orchestrator/node_modules COPY --from=deps /app/apps/orchestrator/node_modules ./apps/orchestrator/node_modules
# apps/orchestrator/prisma/schema.prisma is a symlink → ../../api/prisma/schema.prisma # Copy API prisma schema into orchestrator's own prisma/ dir.
# Docker COPY follows symlinks, so the schema file is already present after # Running generate from within the orchestrator package avoids cross-package
# "COPY apps/orchestrator ./apps/orchestrator" above. # project-root detection issues (Prisma was looking for package.json in /app/apps/).
# pnpm turbo build runs prisma:generate first (which uses --schema=./prisma/schema.prisma) COPY apps/api/prisma/schema.prisma ./apps/orchestrator/prisma/schema.prisma
# from within the orchestrator package — no cross-package project-root issues. RUN cd apps/orchestrator && ./node_modules/.bin/prisma generate --schema=./prisma/schema.prisma
# Build the orchestrator app using TurboRepo # Build the orchestrator app using TurboRepo
RUN pnpm turbo build --filter=@mosaic/orchestrator RUN pnpm turbo build --filter=@mosaic/orchestrator

View File

@@ -7,7 +7,7 @@
"dev": "nest start --watch", "dev": "nest start --watch",
"lint": "eslint src/", "lint": "eslint src/",
"lint:fix": "eslint src/ --fix", "lint:fix": "eslint src/ --fix",
"prisma:generate": "prisma generate --schema=../api/prisma/schema.prisma", "prisma:generate": "prisma generate --schema=./prisma/schema.prisma",
"start": "node dist/main.js", "start": "node dist/main.js",
"start:debug": "nest start --debug --watch", "start:debug": "nest start --debug --watch",
"start:dev": "nest start --watch", "start:dev": "nest start --watch",
@@ -52,5 +52,8 @@
"tsconfig-paths": "^4.2.0", "tsconfig-paths": "^4.2.0",
"typescript": "^5.8.2", "typescript": "^5.8.2",
"vitest": "^4.0.18" "vitest": "^4.0.18"
},
"prisma": {
"schema": "prisma/schema.prisma"
} }
} }

View File

@@ -1 +0,0 @@
../../api/prisma/schema.prisma