Compare commits

...

2 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
fc4699ca51 fix(orchestrator): copy apps/api/package.json for prisma generate in Dockerfile (#705)
Some checks failed
ci/woodpecker/push/ci Pipeline failed
Co-authored-by: Jason Woltje <jason@diversecanvas.com>
Co-committed-by: Jason Woltje <jason@diversecanvas.com>
2026-03-07 15:38:46 +00:00
2 changed files with 10 additions and 6 deletions

View File

@@ -21,8 +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/
# Copy API prisma schema so prisma generate can run in the orchestrator build # (API prisma schema is copied in builder stage directly into orchestrator/prisma/)
COPY apps/api/prisma ./apps/api/prisma
# Copy npm configuration for native binary architecture hints # Copy npm configuration for native binary architecture hints
COPY .npmrc ./ COPY .npmrc ./
@@ -48,9 +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
# Copy API prisma schema and generate the Prisma client for the orchestrator # Copy API prisma schema into orchestrator's own prisma/ dir.
COPY apps/api/prisma ./apps/api/prisma # Running generate from within the orchestrator package avoids cross-package
RUN pnpm --filter=@mosaic/orchestrator prisma:generate # 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 # 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"
} }
} }