# See services/iam/Dockerfile for the pattern explanation. This service
# has no gRPC API — only a RabbitMQ consumer and a tiny health endpoint.
FROM golang:1.23-bookworm AS build
WORKDIR /src
COPY go.mod go.sum* ./
COPY gen/ gen/
COPY pkg/ pkg/
COPY services/notification/ services/notification/
RUN go mod tidy
RUN CGO_ENABLED=0 go build -o /out/notification-server ./services/notification/cmd/server

FROM gcr.io/distroless/static-debian12:nonroot
WORKDIR /app
COPY --from=build /out/notification-server ./notification-server
ENV ENKLY_NOTIFICATION_HEALTH_ADDR=:9007
EXPOSE 9007
ENTRYPOINT ["./notification-server"]
