FROM luzifer/archlinux as builder

ENV CGO_ENABLED=0 \
    GOPATH=/go

COPY . /go/src/github.com/Luzifer/ots
WORKDIR /go/src/github.com/Luzifer/ots

RUN set -ex \
 && pacman --noconfirm -Syy \
      curl \
      git \
      go \
      make \
      nodejs-lts-hydrogen \
      npm \
      tar \
      unzip \
 && make download_libs generate-inner generate-apidocs \
 && go install \
      -ldflags "-X main.version=$(git describe --tags --always || echo dev)" \
      -mod=readonly


FROM scratch

LABEL maintainer "Knut Ahlers <knut@ahlers.me>"

COPY --from=builder /go/bin/ots /usr/local/bin/ots

EXPOSE 3000

USER 1000:1000

ENTRYPOINT ["/usr/local/bin/ots"]
CMD ["--"]

# vim: set ft=Dockerfile: