FROM node:lts-alpine AS builder

WORKDIR /build

# amnet-shared packages
COPY amnet-shared/package.json amnet-shared/package.json
COPY amnet-shared/package-lock.json amnet-shared/package-lock.json
RUN cd amnet-shared && npm ci

# amnet-web packages
COPY amnet-web/package.json amnet-web/package.json
COPY amnet-web/package-lock.json amnet-web/package-lock.json
RUN cd amnet-web && npm ci

# main contents
COPY amnet-shared amnet-shared
COPY amnet-web amnet-web

RUN cd amnet-shared && npm run build
RUN cd amnet-web && npm run build

# ---

FROM joseluisq/static-web-server:2 AS final

ENV SERVER_PORT=8080
ENV SERVER_ROOT=/static
ENV SERVER_LOG_LEVEL=info
ENV SERVER_FALLBACK_PAGE=/static/index.html

COPY --from=builder /build/amnet-web/dist /static

EXPOSE 8080

# ENTRYPOINT/CMD doesn't need modifying