# Hub archive sync bot. Build from the monorepo root so workspace:* deps resolve:
#   docker build -f apps/archive-bot/Dockerfile -t hub-archive-bot .
FROM node:22-slim AS build
WORKDIR /app
COPY . .
RUN NODE_ENV=development npx --yes pnpm@9.12.0 install --frozen-lockfile
RUN npx --yes pnpm@9.12.0 --filter @tactical-media-broadcast-hub/archive-bot... build

FROM node:22-slim
ENV NODE_ENV=production
WORKDIR /app
# Workspace node_modules are relative symlinks; copy the built tree whole.
COPY --from=build --chown=node:node /app /app
# Non-root, and the bot never writes payloads to disk (streams straight to WebDAV).
USER node
EXPOSE 8085
CMD ["node", "/app/apps/archive-bot/dist/main.js"]
