From 977747599fb4a91c38d8bc3e264a1ae05ec84a51 Mon Sep 17 00:00:00 2001 From: Jason Woltje Date: Sat, 7 Mar 2026 16:00:07 +0000 Subject: [PATCH] fix(orchestrator): local prisma schema copy for Docker generate (#706) Co-authored-by: Jason Woltje Co-committed-by: Jason Woltje --- apps/orchestrator/Dockerfile | 13 ++++++------- apps/orchestrator/package.json | 5 ++++- 2 files changed, 10 insertions(+), 8 deletions(-) diff --git a/apps/orchestrator/Dockerfile b/apps/orchestrator/Dockerfile index 389dd5c..c6f71b1 100644 --- a/apps/orchestrator/Dockerfile +++ b/apps/orchestrator/Dockerfile @@ -21,9 +21,7 @@ FROM base AS deps COPY packages/shared/package.json ./packages/shared/ COPY packages/config/package.json ./packages/config/ COPY apps/orchestrator/package.json ./apps/orchestrator/ -# Copy API package.json + prisma schema so prisma generate can find the project root -COPY apps/api/package.json ./apps/api/package.json -COPY apps/api/prisma ./apps/api/prisma +# (API prisma schema is copied in builder stage directly into orchestrator/prisma/) # Copy npm configuration for native binary architecture hints COPY .npmrc ./ @@ -49,10 +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/apps/orchestrator/node_modules ./apps/orchestrator/node_modules -# Copy API package.json + prisma schema so Prisma can find the project root -COPY apps/api/package.json ./apps/api/package.json -COPY apps/api/prisma ./apps/api/prisma -RUN pnpm --filter=@mosaic/orchestrator prisma:generate +# Copy API prisma schema into orchestrator's own prisma/ dir. +# Running generate from within the orchestrator package avoids cross-package +# project-root detection issues (Prisma was looking for package.json in /app/apps/). +COPY apps/api/prisma/schema.prisma ./apps/orchestrator/prisma/schema.prisma +RUN cd apps/orchestrator && ./node_modules/.bin/prisma generate --schema=./prisma/schema.prisma # Build the orchestrator app using TurboRepo RUN pnpm turbo build --filter=@mosaic/orchestrator diff --git a/apps/orchestrator/package.json b/apps/orchestrator/package.json index 29490ea..986228d 100644 --- a/apps/orchestrator/package.json +++ b/apps/orchestrator/package.json @@ -7,7 +7,7 @@ "dev": "nest start --watch", "lint": "eslint src/", "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:debug": "nest start --debug --watch", "start:dev": "nest start --watch", @@ -52,5 +52,8 @@ "tsconfig-paths": "^4.2.0", "typescript": "^5.8.2", "vitest": "^4.0.18" + }, + "prisma": { + "schema": "prisma/schema.prisma" } }