2020-04-18 14:55:23 +00:00
|
|
|
# Container image for running the Ceph-CSI tests
|
|
|
|
#
|
|
|
|
# This container is based on Fedora so that recent versions of tools can easily
|
|
|
|
# be installed.
|
|
|
|
#
|
|
|
|
# Production containers are based one ceph/ceph:latest, which use CentOS as
|
|
|
|
# Operating System, so generated binaries and versions of dependencies may be a
|
|
|
|
# little different.
|
|
|
|
#
|
|
|
|
|
2020-11-17 08:47:31 +00:00
|
|
|
FROM registry.fedoraproject.org/fedora:latest
|
2020-04-18 14:55:23 +00:00
|
|
|
|
|
|
|
ARG GOPATH=/go
|
2021-12-09 05:39:03 +00:00
|
|
|
ARG GOROOT=/usr/local/go
|
2020-04-18 14:55:23 +00:00
|
|
|
|
|
|
|
ENV \
|
|
|
|
GOPATH=${GOPATH} \
|
2021-12-09 05:39:03 +00:00
|
|
|
GOROOT=${GOROOT} \
|
2020-04-18 14:55:23 +00:00
|
|
|
GO111MODULE=on \
|
2021-12-09 05:39:03 +00:00
|
|
|
PATH="${GOROOT}/bin:${GOPATH}/bin:/opt/commitlint/node_modules/.bin:${PATH}"
|
2020-04-18 14:55:23 +00:00
|
|
|
|
2020-06-22 12:06:43 +00:00
|
|
|
COPY build.env /
|
|
|
|
|
|
|
|
RUN source /build.env \
|
|
|
|
&& dnf -y install \
|
2020-04-18 14:55:23 +00:00
|
|
|
git \
|
|
|
|
make \
|
|
|
|
gcc \
|
|
|
|
librados-devel \
|
|
|
|
librbd-devel \
|
|
|
|
rubygems \
|
|
|
|
ShellCheck \
|
2021-08-11 05:03:37 +00:00
|
|
|
codespell \
|
2020-04-18 14:55:23 +00:00
|
|
|
yamllint \
|
2020-05-13 12:02:03 +00:00
|
|
|
npm \
|
2020-12-03 19:37:18 +00:00
|
|
|
diffutils \
|
2020-06-28 18:01:01 +00:00
|
|
|
python3-prettytable \
|
|
|
|
pylint \
|
2020-04-18 14:55:23 +00:00
|
|
|
&& dnf -y update \
|
|
|
|
&& dnf -y clean all \
|
|
|
|
&& gem install mdl \
|
2021-12-09 05:39:03 +00:00
|
|
|
&& mkdir -p ${GOROOT} \
|
|
|
|
&& curl https://storage.googleapis.com/golang/go${GOLANG_VERSION}.linux-amd64.tar.gz \
|
|
|
|
| tar xzf - -C ${GOROOT} --strip-components=1 \
|
2020-04-18 14:55:23 +00:00
|
|
|
&& curl -sf "https://install.goreleaser.com/github.com/golangci/golangci-lint.sh" \
|
|
|
|
| bash -s -- -b ${GOPATH}/bin "${GOLANGCI_VERSION}" \
|
2020-08-05 06:40:58 +00:00
|
|
|
&& curl -L https://git.io/get_helm.sh | bash -s -- --version "${HELM_VERSION}" \
|
2020-05-13 12:02:03 +00:00
|
|
|
&& mkdir /opt/commitlint && pushd /opt/commitlint \
|
|
|
|
&& npm init -y \
|
2021-07-29 10:47:52 +00:00
|
|
|
&& npm install @commitlint/cli@"${COMMITLINT_VERSION}" \
|
2020-05-13 12:02:03 +00:00
|
|
|
&& popd \
|
2020-04-18 14:55:23 +00:00
|
|
|
&& true
|
|
|
|
|
|
|
|
WORKDIR /go/src/github.com/ceph/ceph-csi
|