1ARG UBUNTU_VERSION 2 3FROM ubuntu:${UBUNTU_VERSION} 4 5ARG UBUNTU_VERSION 6 7ENV DEBIAN_FRONTEND noninteractive 8 9# Install common dependencies (so that this step can be cached separately) 10COPY ./common/install_base.sh install_base.sh 11RUN bash ./install_base.sh && rm install_base.sh 12 13# Install user 14COPY ./common/install_user.sh install_user.sh 15RUN bash ./install_user.sh && rm install_user.sh 16 17# Install conda and other packages (e.g., numpy, pytest) 18ARG ANACONDA_PYTHON_VERSION 19ARG CONDA_CMAKE 20ENV ANACONDA_PYTHON_VERSION=$ANACONDA_PYTHON_VERSION 21ENV PATH /opt/conda/envs/py_$ANACONDA_PYTHON_VERSION/bin:/opt/conda/bin:$PATH 22COPY requirements-ci.txt /opt/conda/requirements-ci.txt 23COPY ./common/install_conda.sh install_conda.sh 24COPY ./common/common_utils.sh common_utils.sh 25RUN bash ./install_conda.sh && rm install_conda.sh common_utils.sh /opt/conda/requirements-ci.txt 26 27# Note that Docker build forbids copying file outside the build context 28COPY ./common/install_linter.sh install_linter.sh 29COPY ./common/common_utils.sh common_utils.sh 30RUN bash ./install_linter.sh 31RUN rm install_linter.sh common_utils.sh 32 33USER jenkins 34CMD ["bash"] 35