FROM node:22-alpine AS build
WORKDIR /workspace
RUN corepack enable
COPY package.json pnpm-lock.yaml pnpm-workspace.yaml ./
COPY apps/api/package.json apps/api/package.json
COPY apps/admin-web/package.json apps/admin-web/package.json
RUN pnpm install --frozen-lockfile --filter @msar/api...
COPY apps/api apps/api
RUN pnpm --filter @msar/api build \
    && pnpm --filter @msar/api --prod deploy /runtime

FROM node:22-alpine AS runtime
WORKDIR /app
ENV NODE_ENV=production
COPY --from=build --chown=node:node /runtime ./
USER node
EXPOSE 3000
CMD ["node", "dist/main.js"]
