From fa7bfd33b4163f26a54183b2854a1678ef7e0bdd Mon Sep 17 00:00:00 2001 From: Till JS Date: Sat, 11 Apr 2026 16:32:05 +0200 Subject: [PATCH] fix(mana-credits): use pnpm in Dockerfile to handle workspace deps bun install doesn't read pnpm-workspace.yaml, so workspace dependencies like @mana/shared-hono can't be resolved. Switch to pnpm install with --filter to install only mana-credits and its workspace deps. Co-Authored-By: Claude Opus 4.6 (1M context) --- services/mana-credits/Dockerfile | 23 ++++++++++++----------- 1 file changed, 12 insertions(+), 11 deletions(-) diff --git a/services/mana-credits/Dockerfile b/services/mana-credits/Dockerfile index b3a846448..d6d524259 100644 --- a/services/mana-credits/Dockerfile +++ b/services/mana-credits/Dockerfile @@ -1,21 +1,22 @@ FROM oven/bun:1 AS production +# Install pnpm (mana-credits is part of a pnpm workspace) +RUN apt-get update && apt-get install -y --no-install-recommends curl ca-certificates && rm -rf /var/lib/apt/lists/* && \ + curl -fsSL https://get.pnpm.io/install.sh | env SHELL=/bin/bash PNPM_HOME=/usr/local/share/pnpm sh - && \ + ln -s /usr/local/share/pnpm/pnpm /usr/local/bin/pnpm + WORKDIR /app -# Copy workspace package files for dependency resolution -COPY package.json bun.lock* ./ +# Copy workspace structure for dependency resolution +COPY package.json pnpm-lock.yaml pnpm-workspace.yaml ./ COPY services/mana-credits/package.json ./services/mana-credits/ -COPY packages/shared-hono/package.json ./packages/shared-hono/ -COPY packages/shared-types/package.json ./packages/shared-types/ - -# Install dependencies (workspace-aware install from root) -WORKDIR /app/services/mana-credits -RUN bun install - -# Copy source (workspace deps + service) -WORKDIR /app COPY packages/shared-hono ./packages/shared-hono COPY packages/shared-types ./packages/shared-types + +# Install dependencies for mana-credits only (with workspace deps) +RUN pnpm install --filter @mana/credits... --no-frozen-lockfile --ignore-scripts + +# Copy source COPY services/mana-credits/src ./services/mana-credits/src COPY services/mana-credits/tsconfig.json services/mana-credits/drizzle.config.ts ./services/mana-credits/