# A Custom Docker Image for Running Toil's CI/CD (currently on Gitlab).
#
# To build this image, run:
#
#   docker login
#   docker build . -t {docker_username}/{tag_key}:{tag_value}
#   docker push {docker_username}/{tag_key}:{tag_value}
#
# For example:
#
#   docker login quay.io
#   docker build . -t quay.io/ucsc_cgl/toil_ci_prebake:latest
#   docker push quay.io/ucsc_cgl/toil_ci_prebake:latest
#
FROM quay.io/vgteam/dind

ENV DEBIAN_FRONTEND=noninteractive

RUN mkdir -p ~/.docker/cli-plugins/
RUN curl -L https://github.com/docker/buildx/releases/download/v0.6.3/buildx-v0.6.3.linux-amd64 > ~/.docker/cli-plugins/docker-buildx
RUN chmod u+x ~/.docker/cli-plugins/docker-buildx

RUN apt-get -q -y update && \
    apt-get -q -y upgrade && \
    apt-get -q -y install \
        make git software-properties-common build-essential virtualenv libssl-dev libffi-dev \
        libncurses5-dev curl zip unzip cmake wget docker.io python3-pip python3-virtualenv \
        python-dev npm nodejs tzdata jq awscli && \
    apt-get clean

RUN sudo add-apt-repository -y ppa:deadsnakes/ppa && \
    sudo apt-get update && \
    sudo apt-get install -y \
        python3.7 python3.7-dev python3.7-venv python3.7-distutils \
        python3.8 python3.8-dev python3.8-venv python3.8-distutils \
        python3.9 python3.9-dev python3.9-venv python3.9-distutils \
        python3.10 python3.10-dev python3.10-venv python3.10-distutils

LABEL maintainers="anovak@soe.ucsc.edu lblauvel@ucsc.edu"
