mirror of
https://github.com/ceph/ceph-csi.git
synced 2024-12-18 11:00:25 +00:00
d8a040719e
On occasion there are inconsistencies in the CentOS or Ceph RPM repositories. This can cause `dnf update` to fail when there are conflicting versions of a package. By adding the `--nobest` option, packages can get upgraded to an older version, but not the latest. Signed-off-by: Niels de Vos <ndevos@ibm.com>
44 lines
1.2 KiB
Docker
44 lines
1.2 KiB
Docker
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 issues
|
|
# https://github.com/ceph/ceph-container/issues/2034
|
|
# https://github.com/ceph/ceph-container/issues/2141 are fixed.
|
|
RUN dnf config-manager --disable \
|
|
tcmu-runner,tcmu-runner-source,tcmu-runner-noarch,ceph-iscsi,ganesha || true
|
|
|
|
RUN mkdir -p /etc/selinux && touch /etc/selinux/config
|
|
|
|
# other/conflicting versions of protobuf get installed as dependency
|
|
RUN dnf -y remove protobuf
|
|
|
|
RUN dnf -y install \
|
|
git \
|
|
make \
|
|
gcc \
|
|
librados-devel \
|
|
libcephfs-devel \
|
|
librbd-devel \
|
|
&& dnf -y --nobest update \
|
|
&& dnf clean all \
|
|
&& rm -rf /var/cache/yum \
|
|
&& true
|
|
|
|
WORKDIR "/go/src/github.com/ceph/ceph-csi"
|