FROM golang:1.23 AS builder

WORKDIR /app

COPY go.mod go.mod
COPY go.sum go.sum

RUN go mod download

COPY cmd ./cmd
COPY pkg ./pkg

RUN CGO_ENABLED=0 go build -v -o bin/network-policy-controller ./cmd/controller


FROM gcr.io/pingcap-public/pingcap/alpine-glibc:alpine-3.14.3
WORKDIR /
COPY --from=builder /app/bin/network-policy-controller network-policy-controller

USER 65532:65532
ENTRYPOINT ["/network-policy-controller"]
