FROM golang:alpine as builder

ARG ACCESS_TOKEN_USR="nothing"
ARG ACCESS_TOKEN_PWD="nothing"

RUN apk add --no-cache ca-certificates tzdata git

WORKDIR /

# Create a netrc file using the credentials specified using --build-arg
RUN printf "machine git.coopgo.io\n\
    login ${ACCESS_TOKEN_USR}\n\
    password ${ACCESS_TOKEN_PWD}\n\
    \n"\
    >> ~/.netrc
RUN chmod 600 ~/.netrc

COPY . .

RUN go mod download && CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build -o /server

RUN rm -r themes/*
RUN git clone --depth 1 https://git.coopgo.io/coopgo-apps/parcoursmob-default-theme themes/default
RUN git clone -b spie06 --depth 1 https://git.coopgo.io/coopgo-apps/parcoursmob-default-theme themes/spie06

FROM scratch
COPY --from=builder /etc/ssl/certs/ca-certificates.crt /etc/ssl/certs/
COPY --from=builder /usr/share/zoneinfo /usr/share/zoneinfo
COPY --from=builder /themes/ /themes/
COPY --from=builder /server /

EXPOSE 8080
ENTRYPOINT ["/server"]
