FROM ubuntu:18.04

ENV DEBIAN_FRONTEND noninteractive
ENV container docker
ENV LC_ALL C.UTF-8
ENV LANG C.UTF-8

RUN apt update && \
  apt -y install git \
  netcat \
  netbase \
  openssh-server \
  python3-minimal \
  python3-setuptools \
  python3-pip \
  python3-dev \
  python3-dateutil \
  ca-certificates \
  openstack-pkg-tools \
  apache2 \
  libmysqlclient-dev \
  gcc \
  g++ \
  libffi-dev \
  libssl-dev --no-install-recommends && \
  apt-get clean && \
  rm -rf \
     /var/lib/apt/lists/* \
     /tmp/* \
     /var/tmp/* \
     /usr/share/man \
     /usr/share/doc \
     /usr/share/doc-base

RUN ln -s /usr/bin/python3 /usr/bin/python && \
  pip3 install -U setuptools && \
  pip3 install wheel && \
  pip3 install pbr==2.0.0


##########################################################################
### aic-orm-tempest-plugin  setup
##########################################################################
WORKDIR /
COPY . ranger-tempest-plugin/

WORKDIR /ranger-tempest-plugin/
RUN python setup.py develop

##########################################################################
### END OF ranger-tempest-plugin setup
##########################################################################

##########################################################################
### openstack tempest setup steps
##########################################################################

### reset workdir to root before executing tempest steps
WORKDIR /

### git clone tempest
RUN git clone https://git.openstack.org/openstack/tempest

### now run 'pip install -r requirements'
RUN pip3 install -r /tempest/requirements.txt && \
  pip3 install -r /tempest/test-requirements.txt

### create required tempest directories - and remove .stestr folder
RUN mkdir -p /tempest/logs \
    && mkdir -p /tempest/tempest_lock \
    && mkdir -p /tempest/images \
    && mkdir -p /var/log/tempest \
    && rm -rf /tempest/.stestr \
    && rm -rf /tempest/.stestr.conf

# copy tempest test setup files
COPY tempest_setup/create_tenant.sh  /tempest/etc
COPY tempest_setup/accounts.yaml  /tempest/etc
COPY tempest_setup/tempest.conf  /tempest/etc

##########################################################################
### END OF  openstack tempest setup steps
##########################################################################

##########################################################################
### RUN tempest tests on test_regions
##########################################################################
### create egg-info for tempest
RUN cd /tempest && \
  python setup.py develop

#ENTRYPOINT stestr run ranger_tempest_plugin.tests.api.test_regions \
#   && /bin/bash
#ENTRYPOINT stestr run ranger_tempest_plugin.tests.api.test_flavors/ \
#   && /bin/bash
#ENTRYPOINT stestr run ranger_tempest_plugin.tests.api.test_customers/ \
#   && /bin/bash
#ENTRYPOINT stestr run ranger_tempest_plugin.tests.api.test_images/ \
#   && /bin/bash