blob: 58f656550b555946984d0b55134ccc751dae8470 [file] [log] [blame]
FROM centos:8.3.2011
ENV BUILD_HOME=/home/build
ENV RPM_BUILD_DIR=$BUILD_HOME/rpmbuild
ENV RPM_DIST_DIR=/dist
ENV CASSANDRA_DIR=$BUILD_HOME/cassandra
LABEL org.cassandra.buildenv=centos
VOLUME ${RPM_DIST_DIR}
# install deps
RUN yum -y install \
ant \
git \
java-1.8.0-openjdk-devel \
java-11-openjdk-devel \
make \
rpm-build \
sudo \
python3-pip
RUN curl http://mirror.centos.org/centos/7/os/x86_64/Packages/ant-junit-1.9.4-2.el7.noarch.rpm -o ant-junit-1.9.4-2.el7.noarch.rpm
RUN rpm -i --nodeps ant-junit-1.9.4-2.el7.noarch.rpm
RUN pip3 install --upgrade pip
# install Sphinx to generate docs
RUN pip3 install \
Sphinx \
sphinx_rtd_theme
# create and change to build user
RUN adduser build
RUN echo "build ALL=(root) NOPASSWD:ALL" > /etc/sudoers.d/build && \
chmod 0440 /etc/sudoers.d/build
USER build
RUN mkdir -p $RPM_BUILD_DIR/{BUILD,BUILDROOT,RPMS,SOURCES,SPECS,SRPMS}
# Clone Cassandra and cache maven artifacts
ARG CASSANDRA_GIT_URL=https://github.com/apache/cassandra.git
RUN git clone ${CASSANDRA_GIT_URL} ${CASSANDRA_DIR}
WORKDIR $CASSANDRA_DIR
COPY build-rpms.sh $BUILD_HOME/