stewie925 338f582060 Add Ranger Tempest Tests
Change-Id: Ie96bad932c6041c0b2781e4fecdc1098cdb5f2fc
2018-05-23 00:54:02 +00:00

96 lines
3.1 KiB
Docker

FROM ubuntu:14.04
ENV DEBIAN_FRONTEND noninteractive
ENV container docker
ENV LC_ALL C.UTF-8
ENV LANG C.UTF-8
RUN apt -qq update && \
apt -y install git \
netcat \
netbase \
openssh-server \
python-minimal \
python-setuptools \
python-pip \
python-dev \
python-dateutil \
ca-certificates \
openstack-pkg-tools \
apache2 \
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 pip install -U pip setuptools --user
RUN pip install wheel --user
# RUN pip install virtualenv
##########################################################################
### aic-orm-tempest-plugin setup
##########################################################################
WORKDIR /
COPY aic-orm-tempest-plugin/. ranger-tempest-plugin/
### create egg-info for ranger-tempest-plugin (uncomment two lines below when ready)
WORKDIR /ranger-tempest-plugin/
RUN python /ranger-tempest-plugin/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
### change requirements params - customized for ranger tempest
RUN sed -i 's/paramiko>=.*/paramiko<2.1.3,>=2.0/g' \
/tempest/requirements.txt
# if os-testr exists, replace os-testr line else insert after PrettyTable line
RUN grep -q 'os-testr.*' /tempest/tempest/requirements.txt \
&& sed -i 's/os-testr.*/os-testr==0.8.0/' /tempest/requirements.txt \
|| sed -i '/PrettyTable.*/a os-testr==0.8.0' /tempest/requirements.txt
### now run 'pip install -r requirements'
RUN pip install -r /tempest/requirements.txt
RUN pip 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 \
&& rm -rf /tempest/.stestr
# copy tempest test setup files
COPY tempest_setup/.testr.conf /tempest/
COPY tempest_setup/create_tenant.sh /tempest/
COPY tempest_setup/accounts.yaml /tempest/etc
COPY tempest_setup/tempest.conf /tempest/etc
##########################################################################
### END OF openstack tempest setup teps
##########################################################################
##########################################################################
### RUN tempest tests on test_regions
##########################################################################
### create egg-info for tempest
WORKDIR /tempest/
RUN python /tempest/setup.py develop
ENTRYPOINT ostestr run aic_orm_tempest_plugin.tests.api.test_regions \
&& /bin/bash