FROM golang:1.25.3 AS build
WORKDIR /src
COPY go.mod go.sum ./
RUN go mod download
COPY . .
RUN CGO_ENABLED=0 GOOS=linux go build -o /out/patchping ./cmd/releasewatcher
#FROM gcr.io/distroless/static:nonroot
FROM alpine:3.22.2
WORKDIR /
RUN mkdir /data
VOLUME ["/data"]
EXPOSE 8080
ENV RW_ADDR=":8080" \
    RW_DATA="/data/releasewatcher.json" \
    RW_ADMIN_EMAIL="admin@example.local" \
    RW_ADMIN_PASSWORD="admin12345" \
    RW_SECRET="change-me-in-production" \
    RW_DISCORD_TOKEN="" \
    RW_DISCORD_APP_ID="" \
    RW_DISCORD_GUILD_ID="" \
    RW_DISCORD_CATEGORY_ID="" \
    RW_DISCORD_CATEGORY_NAME="" \
    RW_DISCORD_RELEASE_MENTION="@here" \
    RW_DISCORD_SEND_DMS="false"

COPY --from=build /out/patchping /patchping
ENTRYPOINT ["/patchping"]