FROM golang:1.22 AS builder

LABEL stage=gobuilder

WORKDIR /app/

# 从构建参数中获取变量值
ARG VERSION
ARG NAME
ARG GIT_COMMIT
ARG GIT_BRANCH
ARG BUILD_TIME

COPY . .

#RUN go build -mod=vendor -ldflags="-s -w" -o /app/cnbn-did .
RUN	go build -ldflags="-X 'main.Version=${VERSION}' -X 'main.Name=${NAME}' -X 'main.GitCommit=${GIT_COMMIT}' -X 'main.GitBranch=${GIT_BRANCH}' -X 'main.BuildTime=${BUILD_TIME}'" -o /app/cnbn-did .

FROM ubuntu:22.04

COPY --from=builder /usr/share/zoneinfo/Asia/Shanghai /usr/share/zoneinfo/Asia/Shanghai
ENV TZ Asia/Shanghai

WORKDIR /app
COPY --from=builder /app/cnbn-did /app/cnbn-did
COPY --from=builder /app/etc /app/etc

CMD ["./cnbn-did", "-f", "etc/cnbn-did.yaml"]
