FROM node:22.23.2-bookworm-slim AS dependencies

ARG PNPM_VERSION=10.29.3

WORKDIR /app

RUN apt-get update \
    && apt-get install --yes --no-install-recommends python3 make g++ \
    && rm -rf /var/lib/apt/lists/*

RUN corepack enable && corepack prepare "pnpm@${PNPM_VERSION}" --activate

COPY package.json pnpm-workspace.yaml pnpm-lock.yaml ./
COPY server/package.json ./server/package.json
COPY client/package.json ./client/package.json

RUN pnpm install --frozen-lockfile --prod --filter @announcements/server...

COPY server ./server

FROM node:22.23.2-bookworm-slim

WORKDIR /app

COPY --from=dependencies /app/node_modules ./node_modules
COPY --from=dependencies /app/server ./server

ENV NODE_ENV=production

EXPOSE 7532

CMD ["node", "server/src/index.js"]
