FROM golang:1.26-alpine AS build
WORKDIR /src
COPY go.mod go.sum ./
RUN go mod download
COPY cmd/node-agent ./cmd/node-agent
COPY internal/nodeagent ./internal/nodeagent
COPY internal/nodeapi ./internal/nodeapi
RUN CGO_ENABLED=0 go build -trimpath -ldflags="-s -w" -o /node-agent ./cmd/node-agent
FROM scratch
COPY --from=build /etc/ssl/certs/ca-certificates.crt /etc/ssl/certs/
COPY --from=build /node-agent /node-agent
USER 65532:65532
EXPOSE 9081
ENTRYPOINT ["/node-agent"]
