fix(orchestrator): rm dangling symlink before COPY in Docker builder
All checks were successful
ci/woodpecker/push/ci Pipeline was successful

Kaniko resolves destination symlinks during COPY. Writing to
apps/orchestrator/prisma/schema.prisma (a symlink → ../../api/prisma/schema.prisma)
causes kaniko to try to resolve /app/apps/api which does not exist → build fails.

Fix: RUN rm -f the symlink first so the destination path is clean,
then COPY the real schema file to that location.

CI is unaffected (symlink resolves correctly in the monorepo checkout).
This commit is contained in:
2026-03-07 11:00:27 -06:00
parent 123cbce5cd
commit 945f4ba12a

View File

@@ -47,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
# Overwrite the symlink (apps/orchestrator/prisma/schema.prisma → ../../api/prisma/schema.prisma)
# with the real file content. Kaniko copies symlinks AS symlinks (does not follow them),
# so the symlink target would be dangling inside the container. Copying the actual file
# after the orchestrator COPY overwrites the symlink with the resolved content.
# The repo has apps/orchestrator/prisma/schema.prisma as a symlink for CI use.
# Kaniko resolves destination symlinks on COPY, which fails because the symlink
# target (../../api/prisma/schema.prisma) doesn't exist in the container.
# Fix: remove the dangling symlink first, then copy the real schema file there.
RUN rm -f apps/orchestrator/prisma/schema.prisma
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.