Compare commits

...

4 Commits

Author SHA1 Message Date
0271ec1e49 fix(orchestrator): copy schema file after COPY to overwrite dangling symlink
All checks were successful
ci/woodpecker/push/ci Pipeline was successful
Kaniko does NOT follow symlinks — it copies them as-is. The symlink
apps/orchestrator/prisma/schema.prisma → ../../api/prisma/schema.prisma
becomes dangling inside the container since apps/api/ is not present.

Fix: explicitly copy apps/api/prisma/schema.prisma to
apps/orchestrator/prisma/schema.prisma AFTER the COPY apps/orchestrator
step. This overwrites the symlink with the actual file content.

CI still works via the symlink (full monorepo checkout resolves it).
Docker now has the real file at the expected path.
2026-03-07 10:45:44 -06:00
7d47e5ff99 fix(orchestrator): use symlink path ./prisma/schema.prisma in generate script (#708)
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 16:31:49 +00:00
ef674206e7 fix(orchestrator): symlink prisma/schema.prisma to resolve Docker build root detection (#707)
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 16:17:20 +00:00
977747599f fix(orchestrator): local prisma schema copy for Docker generate (#706)
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 16:00:07 +00:00
3 changed files with 10 additions and 8 deletions

View File

@@ -21,9 +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 package.json + prisma schema so prisma generate can find the project root # API schema is available via apps/orchestrator/prisma/schema.prisma symlink
COPY apps/api/package.json ./apps/api/package.json
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 ./
@@ -49,10 +47,13 @@ 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 package.json + prisma schema so Prisma can find the project root # Overwrite the symlink (apps/orchestrator/prisma/schema.prisma → ../../api/prisma/schema.prisma)
COPY apps/api/package.json ./apps/api/package.json # with the real file content. Kaniko copies symlinks AS symlinks (does not follow them),
COPY apps/api/prisma ./apps/api/prisma # so the symlink target would be dangling inside the container. Copying the actual file
RUN pnpm --filter=@mosaic/orchestrator prisma:generate # after the orchestrator COPY overwrites the symlink with the resolved content.
COPY apps/api/prisma/schema.prisma ./apps/orchestrator/prisma/schema.prisma
# pnpm turbo build runs prisma:generate (--schema=./prisma/schema.prisma) from the
# orchestrator package context — no cross-package project-root issues.
# 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",

View File

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