FROM golang:alpine AS builder

WORKDIR /app 

COPY . .

RUN apk add git

RUN go get github.com/beego/bee/v2 && go install github.com/beego/bee/v2@master

RUN timeout 15 bee run -gendoc=true -downdoc=true -runmode=dev || :

RUN sed -i 's/http:\/\/127.0.0.1:8080\/swagger\/swagger.json/swagger.json/g' swagger/index.html

RUN CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build -ldflags="-w -s" .

RUN ls /app

FROM scratch

WORKDIR /app

COPY --from=builder /app/oc-datacenter /usr/bin/ 
COPY --from=builder /app/swagger /app/swagger

COPY docker_datacenter.json /etc/oc/datacenter.json

EXPOSE 8080

ENTRYPOINT ["oc-datacenter"]