FROM gcr.io/pingcap-public/third-party/golang:1.17.5-alpine3.15 as builder

RUN apk --update add ca-certificates

WORKDIR /go/src/observability

COPY . .

RUN CGO_ENABLED=0 GOOS=linux go build -mod=vendor -a -ldflags '-extldflags "-s -w -static"' -o /go/bin/observability .

FROM gcr.io/pingcap-public/pingcap/alpine-glibc:alpine-3.14.6

# Add in certs
COPY --from=builder /etc/ssl/certs/ca-certificates.crt /etc/ssl/certs/ca-certificates.crt

# Add the binary
COPY --from=builder /go/bin/observability /usr/local/bin/observability

# Copy chart manifest
COPY build/manifest /etc/manifest

ENTRYPOINT ["/usr/local/bin/observability"]
