fix(orchestrator): rm dangling symlink before COPY in Docker builder
All checks were successful
ci/woodpecker/push/ci Pipeline was successful
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:
@@ -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/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
|
||||||
|
|
||||||
# Overwrite the symlink (apps/orchestrator/prisma/schema.prisma → ../../api/prisma/schema.prisma)
|
# The repo has apps/orchestrator/prisma/schema.prisma as a symlink for CI use.
|
||||||
# with the real file content. Kaniko copies symlinks AS symlinks (does not follow them),
|
# Kaniko resolves destination symlinks on COPY, which fails because the symlink
|
||||||
# so the symlink target would be dangling inside the container. Copying the actual file
|
# target (../../api/prisma/schema.prisma) doesn't exist in the container.
|
||||||
# after the orchestrator COPY overwrites the symlink with the resolved content.
|
# 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
|
COPY apps/api/prisma/schema.prisma ./apps/orchestrator/prisma/schema.prisma
|
||||||
# pnpm turbo build runs prisma:generate (--schema=./prisma/schema.prisma) from the
|
# pnpm turbo build runs prisma:generate (--schema=./prisma/schema.prisma) from the
|
||||||
# orchestrator package context — no cross-package project-root issues.
|
# orchestrator package context — no cross-package project-root issues.
|
||||||
|
|||||||
Reference in New Issue
Block a user