FROM ubuntu:16.04

LABEL maintainer="qa@mirantis.com"

ARG TEMPEST_TAG="mcp/pike"
# Tempest plugins
ARG HORIZON_TAG="mcp/pike"
ARG BARBICAN_TAG="mcp/pike"
ARG DESIGNATE_TAG="mcp/pike"
ARG HEAT_TAG="mcp/pike"
ARG IRONIC_TAG="mcp/pike"
ARG MANILA_TAG="mcp/pike"
ARG TELEMETRY_TAG="mcp/pike"
# global openstack requirements repo
# This is the commit where tempest version is 17.2.0 in u-c
ARG UPPER_CONSTRAINTS_TAG="83b1de74834fbcdbe749e270c29e76cdc28f85d5"
#
ENV DEBIAN_FRONTEND=noninteractive \
    DEBCONF_NONINTERACTIVE_SEEN=true \
    LANG=C.UTF-8 \
    LANGUAGE=$LANG
SHELL ["/bin/bash", "-xec"]
USER root
# pre-update
RUN cd /etc/apt/ && echo > sources.list \
  && echo "deb [arch=amd64] http://cz.archive.ubuntu.com/ubuntu xenial main restricted universe multiverse" >> sources.list \
  && echo "deb [arch=amd64] http://cz.archive.ubuntu.com/ubuntu xenial-updates main restricted universe multiverse" >> sources.list \
  && echo "deb [arch=amd64] http://cz.archive.ubuntu.com/ubuntu xenial-backports main restricted universe multiverse" >> sources.list \
  && echo 'Acquire::Languages "none";' > apt.conf.d/docker-no-languages \
  && echo 'Acquire::GzipIndexes "true"; Acquire::CompressionTypes::Order:: "gz";' > apt.conf.d/docker-gzip-indexes \
  && echo 'APT::Get::Install-Recommends "false"; APT::Get::Install-Suggests "false";' > apt.conf.d/docker-recommends \
  && apt-get update && apt-get  upgrade -y \
  && apt-get install -y vim-tiny git-core python-pip libffi-dev libssl-dev python-dev python3-dev iputils-ping patch

#Due to upstream bug we should use fixed version of pip
RUN pip install -U 'pip==9.0.3'
WORKDIR /var/lib/
# TODO migrate to downstrem mirror?
RUN git clone https://github.com/openstack/requirements.git openstack_requirements && \
    pushd openstack_requirements; git checkout $UPPER_CONSTRAINTS_TAG; popd ;

RUN sed -i -e 's|tempest===17.2.0|git+https://gerrit.mcp.mirantis.net/packaging/sources/tempest@mcp/pike#egg=tempest|g' \
    /var/lib/openstack_requirements/upper-constraints.txt;

RUN git clone https://gerrit.mcp.mirantis.net/packaging/sources/tempest-horizon tempest-horizon-plugin ; \
    pushd tempest-horizon-plugin ; git checkout $HORIZON_TAG; \
    pip install --constraint /var/lib/openstack_requirements/upper-constraints.txt -r requirements.txt . ; \
    popd;

RUN git clone https://gerrit.mcp.mirantis.net/packaging/sources/barbican-tempest-plugin && \
    pushd barbican-tempest-plugin; git checkout $BARBICAN_TAG; \
    pip install --constraint /var/lib/openstack_requirements/upper-constraints.txt -r requirements.txt . ; \
    popd;

RUN git clone https://gerrit.mcp.mirantis.net/packaging/sources/designate-tempest-plugin && \
    pushd designate-tempest-plugin; git checkout $DESIGNATE_TAG; \
    pip install --constraint /var/lib/openstack_requirements/upper-constraints.txt -r requirements.txt . ; \
    popd;

RUN git clone https://gerrit.mcp.mirantis.net/packaging/sources/heat-tempest-plugin && \
    pushd heat-tempest-plugin; git checkout $HEAT_TAG; \
    pip install --constraint /var/lib/openstack_requirements/upper-constraints.txt -r requirements.txt . ; \
    popd;

RUN git clone https://gerrit.mcp.mirantis.net/packaging/sources/ironic-tempest-plugin && \
    pushd ironic-tempest-plugin; git checkout $IRONIC_TAG; \
    pip install --constraint /var/lib/openstack_requirements/upper-constraints.txt -r requirements.txt . ; \
    popd;

RUN git clone https://gerrit.mcp.mirantis.net/packaging/sources/manila-tempest-plugin && \
    pushd manila-tempest-plugin; git checkout $MANILA_TAG; \
    pip install --constraint /var/lib/openstack_requirements/upper-constraints.txt -r requirements.txt . ; \
    popd;

RUN git clone https://gerrit.mcp.mirantis.net/packaging/sources/telemetry-tempest-plugin && \
    pushd telemetry-tempest-plugin; git checkout $TELEMETRY_TAG; \
    pip install --constraint /var/lib/openstack_requirements/upper-constraints.txt -r requirements.txt . ; \
    popd;

RUN git clone https://gerrit.mcp.mirantis.net/packaging/sources/tempest && \
    pushd tempest; git checkout $TEMPEST_TAG; \
    pip install --constraint /var/lib/openstack_requirements/upper-constraints.txt -r requirements.txt ; \
    pip install . ; popd;

RUN pip install junitxml
# Patch junitxml library to include skipped tests in the test report totals header
COPY bin/patches/junitxml_init.patch /tmp/junitxml_init.patch
RUN patch /usr/local/lib/python2.7/dist-packages/junitxml/__init__.py /tmp/junitxml_init.patch

# Cleanup.
RUN apt-get -y purge libx11-data xauth libxmuu1 libxcb1 libx11-6 libxext6 \
    ppp pppconfig pppoeconf popularity-contest cpp gcc g++ libssl-doc
RUN apt-get -y autoremove; apt-get -y clean;
RUN rm -rf /root/.cache
RUN rm -rf /var/lib/apt/lists/*
#
COPY bin/entrypoint.sh /usr/bin/entrypoint.sh
COPY bin/run_tempest.sh /usr/bin/run-tempest

ENV LOG_DIR='/root/tempest'

WORKDIR /var/lib/tempest/
ENTRYPOINT ["/usr/bin/entrypoint.sh"]

# Build
# docker build -t docker-ci-tempest:$(date "+%Y_%m_%d_%H_%M_%S") .
