ARG FROM_IMAGE
FROM ${FROM_IMAGE}
# declare the arg again to be usable below
ARG FROM_IMAGE

MAINTAINER h2oai "h2o.ai"

ARG H2O_BRANCH='master'
ARG JENKINS_UID=$(id -u jenkins)
ARG JENKINS_GID=$(id -g jenkins)

COPY xgb/ubuntu/common/sbin xgb/common/sbin /usr/sbin/

RUN \
    chmod +x /usr/sbin/install_packages && \
    sync && \
    /usr/sbin/install_packages ${FROM_IMAGE}

COPY jdk1.8.0_171.zip /usr/local/lib/
RUN \
    chmod +x /usr/sbin/install_java && \
    sync && \
    /usr/sbin/install_java
ENV JAVA_VERSION '8'
ENV JAVA_HOME /usr/lib/jvm/java-8-oracle
ENV PATH ${JAVA_HOME}/bin:${PATH}

# Install Python 3.7
COPY xgb_build/scripts/install_python_version_ubuntu /usr/sbin/
COPY xgb_build/scripts/install_python_source_ubuntu /usr/sbin/
RUN \
    chmod a+x /usr/sbin/install_python_version_ubuntu && \
    chmod a+x /usr/sbin/install_python_source_ubuntu && \
    sync && \
    case ${FROM_IMAGE} in \
     *16.04*) /usr/sbin/install_python_source_ubuntu 3.7.4;; \
    *) /usr/sbin/install_python_version_ubuntu 3.7;; \
    esac 
    
RUN \
    chmod +x /usr/sbin/create_jenkins_user && \
    sync && \
    /usr/sbin/create_jenkins_user

# Set GRADLE USER env var
ENV GRADLE_OPTS '-Dorg.gradle.daemon=false'
ENV LANG='C.UTF-8'
ENV LC_ALL='C.UTF-8'

COPY xgb/common/tmp/prepare_gradle_caches /tmp/
RUN \
    chmod +x /tmp/prepare_gradle_caches && \
    chown jenkins:jenkins /tmp/prepare_gradle_caches
USER jenkins
RUN \
    /tmp/prepare_gradle_caches

USER root

RUN \
    apt-get remove -y libgomp1
