blob: 4a9500635e251edb2c3c38740b6af2bea6307f1e [file] [log] [blame]
#
# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements. See the NOTICE file
# distributed with this work for additional information
# regarding copyright ownership. The ASF licenses this file
# to you under the Apache License, Version 2.0 (the
# "License"); you may not use this file except in compliance
# with the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing,
# software distributed under the License is distributed on an
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
# KIND, either express or implied. See the License for the
# specific language governing permissions and limitations
# under the License.
#
ARG JDK_VERSION=8
FROM maven:3-jdk-${JDK_VERSION}
# Base images maven:3-jdk-8 and maven:3-jdk-11 are based on Debian
# Base image maven:3-jdk-12 is based on Oracle Linux
RUN \
if [ -e /etc/debian_version ]; then \
apt-get update && \
DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends xvfb krb5-config krb5-user dpkg rpm nsis && \
rm -rf /var/lib/apt/lists/* ; \
elif [ -e /etc/oracle-release ]; then \
yum-config-manager --enable ol7_optional_latest && \
yum -y install xorg-x11-server-Xvfb xorg-x11-utils xorg-x11-server-utils krb5-libs krb5-workstation rpm dpkg nsis && \
yum -y clean all ; \
fi
# Create the temp dir for Xvfb
RUN mkdir -p /tmp/.X11-unix && chmod 1777 /tmp/.X11-unix
# Make /etc/passwd writeable to be able to inject username with dynamic uid/gid
RUN chmod 666 /etc/passwd
RUN chmod 666 /etc/group
# Add krb5.conf with EXAMPLE.COM domain
ADD files/krb5.conf /etc/
# Create home directory
RUN mkdir -p /home/hnelson/project && chmod 777 /home/hnelson && chmod 777 /home/hnelson/project
WORKDIR /home/hnelson/project
# Add and configure entrypoint script
ADD files/entrypoint.sh /usr/local/bin
ENTRYPOINT ["/usr/local/bin/entrypoint.sh"]
# Add build script and make it the default command
ADD files/build.sh /usr/local/bin
CMD "/usr/local/bin/build.sh"