#@follow_tag(ubi8-minimal:8.2-ondeck)
FROM ubi8-minimal:8.2-301.1593113563 AS builder

ENV OPERATOR=/usr/local/bin/cincinnati-operator \
    USER_UID=1001 \
    USER_NAME=cincinnati-operator

ENV GOPATH=/go
ENV SRC_DIR=${GOPATH}/src/github.com/openshift/cincinnati-operator

RUN microdnf install -y tar gzip rsync sed go-compilers-golang-compiler

COPY cincinnati-operator-v1.0.2.tar.gz /
RUN mkdir -p "$SRC_DIR" \
    && tar -xzf "cincinnati-operator-v1.0.2.tar.gz" \
        --strip-components 1 \
        -C "$SRC_DIR" \
    && cd "$SRC_DIR" \
    && go build -mod=vendor -o /cincinnati-operator ./cmd/manager


#@follow_tag(ubi8-minimal:8.2-ondeck)
FROM ubi8-minimal:8.2-301.1593113563

ENV OPERATOR=/usr/local/bin/cincinnati-operator \
    USER_UID=1001 \
    USER_NAME=cincinnati-operator

# install operator binary
COPY --from=builder /cincinnati-operator ${OPERATOR}
COPY --from=builder /go/src/github.com/openshift/cincinnati-operator/build/bin /usr/local/bin

#RUN /usr/local/bin/user_setup

RUN mkdir -p ${HOME} && \
    chown ${USER_UID}:0 ${HOME} && \
    chmod ug+rwx ${HOME} && \
    # runtime user will need to be able to self-insert in /etc/passwd
    chmod g+rw /etc/passwd

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

USER ${USER_UID}

LABEL com.redhat.component="cincinnati-operator-container" \
      name="openshift-update-service/openshift-update-service-operator" \
      version="v4.4.0" \
      upstream-vcs-ref="e96ba954930bc649321fc0750a8be35713b8096e" \
      upstream-vcs-type="git" \
      summary="OpenShift Update Service Operator" \
      io.openshift.expose-services="" \
      io.openshift.tags="openshift update service,cincinnati,upgrade,update,operator" \
      io.k8s.display-name="openshift-update-service-operator" \
      maintainer="Lalatendu Mohanty <lmohanty@redhat.com>" \
      description="OpenShift Update Service Operator"
