ARG BUILDPLATFORM
FROM --platform=$BUILDPLATFORM golang:1.26-alpine AS builder

# Set working directory
WORKDIR /app

# Copy source code
COPY . .

# Build statically for Linux
ARG TARGETOS
ARG TARGETARCH

RUN CGO_ENABLED=0 GOOS=$TARGETOS GOARCH=$TARGETARCH \
    go build -a -installsuffix cgo -o weewoowebhook /app/cmd/wee_woo_webhook/main.go

FROM scratch

# Copy statically built binary from the builder
COPY --from=builder /app/weewoowebhook /weewoowebhook

# Set the binary as the container entrypoint
ENTRYPOINT ["/weewoowebhook"]
