blob: 1ae10cc9dd4ce0313436a07c74ebb4f9eafd886d [file] [log] [blame]
FROM debian:jessie-backports
ENV DEB_DIST_DIR=/dist
ENV BUILD_HOME=/home/build
ENV CASSANDRA_DIR=$BUILD_HOME/cassandra
LABEL org.cassandra.buildenv=jessie
VOLUME ${DEB_DIST_DIR}
# configure apt to retry downloads
RUN echo 'APT::Acquire::Retries "9";' > /etc/apt/apt.conf.d/80-retries
RUN rm /etc/apt/sources.list.d/backports.list
RUN echo "deb [check-valid-until=no] http://archive.debian.org/debian jessie-backports main" > /etc/apt/sources.list.d/backports.list
# install deps
RUN apt-get update -o Acquire::Check-Valid-Until=false && apt-get -y install \
ant \
build-essential \
curl \
devscripts \
git \
sudo
RUN apt-get -y -t jessie-backports --no-install-recommends install \
openjdk-7-jdk \
openjdk-8-jdk
RUN apt-get -y -t jessie-backports install \
python-sphinx \
python-sphinx-rtd-theme
RUN update-java-alternatives --set java-1.8.0-openjdk-$(dpkg --print-architecture)
# create and change to build user
RUN adduser --disabled-login --gecos build build && gpasswd -a build sudo
RUN echo "build ALL=(root) NOPASSWD:ALL" > /etc/sudoers.d/build && \
chmod 0440 /etc/sudoers.d/build
USER build
# 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-debs.sh $BUILD_HOME/