#syntax=docker/dockerfile:1.19.0

# Required, pinned by digest: --build-arg BASE_IMAGE=ghcr.io/metr/hawk-viewer-plugin-base:<version>@sha256:<digest>
ARG BASE_IMAGE

FROM node:26-alpine@sha256:a2dc166a387cc6ca1e62d0c8e265e49ca985d6e60abc9fe6e6c3d6ce8e63f606 AS build

WORKDIR /build
ENV PNPM_HOME=/pnpm
ENV PATH=$PNPM_HOME:$PATH
RUN npm install --global --ignore-scripts corepack@0.35.0

COPY package.json pnpm-lock.yaml ./
RUN --mount=type=cache,target=/pnpm/store,sharing=locked \
    corepack enable \
 && pnpm config set store-dir /pnpm/store \
 && pnpm install --frozen-lockfile

COPY . .
ARG HAWK_VIEWER_PLUGIN_ID=template
RUN pnpm build

FROM ${BASE_IMAGE}
ARG HAWK_VIEWER_PLUGIN_ID=template
ENV HAWK_VIEWER_PLUGIN_ID=${HAWK_VIEWER_PLUGIN_ID}
COPY --from=build /build/dist/ /usr/share/nginx/html/
