ARG BASE_IMAGE
FROM ${BASE_IMAGE}

ARG GOROOT=/usr/local/go
ARG GOARCH

ENV GOPATH=/go \
 GOROOT=${GOROOT} \
 GO111MODULE=on \
 PATH="${GOROOT}/bin:${GOPATH}/bin:${PATH}"

COPY build.env /

RUN source /build.env \
    && \
    ( test -n "${GOARCH}" && exit 0; echo -e "\n\nMissing GOARCH argument for building image, install Golang or run: make containerized-build GOARCH=amd64\n\n"; exit 1 ) \
    && mkdir -p /usr/local/go \
    && curl https://storage.googleapis.com/golang/go${GOLANG_VERSION}.linux-${GOARCH}.tar.gz | tar xzf - -C ${GOROOT} --strip-components=1

# TODO: remove the following cmd, when issue
# https://github.com/ceph/ceph-container/issues/2034 is fixed.
RUN dnf config-manager --disable \
    tcmu-runner,tcmu-runner-source,tcmu-runner-noarch,ceph-iscsi || true

RUN dnf -y install \
	git \
	make \
	gcc \
	librados-devel \
	librbd-devel \
    && dnf -y update \
    && dnf clean all \
    && rm -rf /var/cache/yum \
    && true

WORKDIR "/go/src/github.com/ceph/ceph-csi"