feat: Add debug output to Dockerfiles and .dockerignore
Some checks failed
ci/woodpecker/push/woodpecker Pipeline failed
ci/woodpecker/manual/woodpecker Pipeline was successful

- Add .dockerignore to exclude node_modules, dist, and build artifacts
- Add pre/post build directory listings to diagnose dist not found issue
- Disable turbo cache temporarily with --force flag
- Add --verbosity=2 for more detailed turbo output

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
2026-02-01 14:50:13 -06:00
parent 763409cbb4
commit cd727f619f
3 changed files with 90 additions and 6 deletions

View File

@@ -46,11 +46,25 @@ 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/api/node_modules ./apps/api/node_modules
# Debug: Show what we have before building
RUN echo "=== Pre-build directory structure ===" && \
echo "--- packages/config/typescript ---" && ls -la packages/config/typescript/ && \
echo "--- packages/shared (top level) ---" && ls -la packages/shared/ && \
echo "--- packages/shared/src ---" && ls -la packages/shared/src/ && \
echo "--- apps/api (top level) ---" && ls -la apps/api/ && \
echo "--- apps/api/src (exists?) ---" && ls apps/api/src/*.ts | head -5 && \
echo "--- node_modules/@mosaic (symlinks?) ---" && ls -la node_modules/@mosaic/ 2>/dev/null || echo "No @mosaic in node_modules"
# Build the API app and its dependencies using TurboRepo
# This ensures @mosaic/shared is built first, then prisma:generate, then the API
# Cache TurboRepo build outputs for faster subsequent builds
RUN --mount=type=cache,id=turbo-cache,target=/app/.turbo \
pnpm turbo build --filter=@mosaic/api
# Disable turbo cache temporarily to ensure fresh build and see full output
RUN pnpm turbo build --filter=@mosaic/api --force --verbosity=2
# Debug: Show what was built
RUN echo "=== Post-build directory structure ===" && \
echo "--- packages/shared/dist ---" && ls -la packages/shared/dist/ 2>/dev/null || echo "NO dist in shared" && \
echo "--- apps/api/dist ---" && ls -la apps/api/dist/ 2>/dev/null || echo "NO dist in api" && \
echo "--- apps/api/dist contents (if exists) ---" && find apps/api/dist -type f 2>/dev/null | head -10 || echo "Cannot find dist files"
# ======================
# Production stage