# photon based image
FROM photon:4.0
ENV LANG C.UTF-8
ENV HELM_EXPERIMENTAL_OCI=1
ENV COSIGN_PASSWORD=Harbor12345
ENV COSIGN_EXPERIMENTAL=1
ENV COSIGN_OCI_EXPERIMENTAL=1
ENV NOTATION_EXPERIMENTAL=1

COPY --from=tool_builder /tool/tools.tar.gz /usr/local/bin

RUN tdnf update -y && tdnf install -y \
    wget \
    git \
    openjdk8 \
    iproute2 \
    iptables \
    build-essential \
    sed \
    openssl-devel \
    tar \
    which \
    procps-ng \
    gzip && \
    tdnf erase -y toybox && \
    tdnf install -y python3 python3-pip python3-setuptools httpd && \
    pip3 install --upgrade pip pyasn1 google-apitools==0.5.31 gsutil python-dateutil \
    robotframework==6.0.1 robotframework-sshlibrary robotframework-httplibrary \
    requests dbbot robotframework-seleniumlibrary robotframework-pabot \
    robotframework-JSONLibrary hurry.filesize --upgrade && \
    tdnf clean all

RUN pwd && ls && \
    # Install docker
    DOCKER_VERSION=20.10.3 && wget https://download.docker.com/linux/static/stable/x86_64/docker-$DOCKER_VERSION.tgz && \
    tar --strip-components=1 -xvzf docker-$DOCKER_VERSION.tgz -C /usr/bin &&  \
    rm docker-$DOCKER_VERSION.tgz

COPY containerd_config.toml /etc/containerd/config.toml
COPY busybox.tar /
# This container needs to be run in privileged mode(run with --privileged option) to make it work
COPY dockerd-entrypoint.sh /usr/local/bin/dockerd-entrypoint.sh

RUN chmod +x /usr/local/bin/dockerd-entrypoint.sh && \
    mkdir -p $HOME/.pki/nssdb && \
    echo Harbor12345 > password.ca && \
    certutil -d sql:$HOME/.pki/nssdb -N -f password.ca

RUN tdnf install -y podman

VOLUME /var/lib/docker
