Chapter 3. Installing the OpenStack Integration Test Suite

This section describes how to install the OpenStack Integration Test Suite either with the director or with a manual installation.

3.1. Using the Director

Edit the undercloud.conf file, located in the stack user’s home directory. By default, enable_tempest is set to false. Change this to true.

enable_tempest = true

You are now ready to install the tempest packages and plug-ins, described in Section 3.3, “Installing the OpenStack Integration Test Suite Packages”.

3.2. Preparing a Manual Installation

To run the OpenStack Integration Test Suite, you need to first install the necessary packages and create a configuration file that will tell the Integration Test Suite where to find the various OpenStack services and other testing behaviour switches.

On the controller node, as a root user, create a virtual machine called tempest. This machine must run Red Hat Enterprise Linux 7.3 or greater. It also needs to be able to reach the cloud, but it does not have to be part of the cloud. For more information, see Creating Guests with Virt-Manager.

Also, before installing the OpenStack Integration Test Suite, the following networks are required within your Red Hat OpenStack Platform environment:

  • An external network which can provide floating IP
  • A private network

These networks must be connected through a router.

Create the private network:

$ openstack network create <network_name> --share
$ openstack subnet create <subnet_name> --subnet-range <address/prefix>
$ openstack router create <router_name>
$ openstack router add subnet <router_name> <subnet_name>

Create the public network:

$ openstack network create <network_name> --external \
  --provider-network-type flat
$ openstack subnet create <subnet_name> --subnet-range <address/prefix> \
  --gateway <default_gateway> --no-dhcp --network <network_name>
$ openstack router set <router_name> --external_gateway <public_network_name>

You are now ready to install and configure the OpenStack Integration Test Suite within the tempest virtual machine. For more information, see Section 3.3, “Installing the OpenStack Integration Test Suite Packages”.

3.3. Installing the OpenStack Integration Test Suite Packages

  1. Install the packages related to the OpenStack Integration Test Suite:

    # yum -y install openstack-tempest

    However, this command will not install any tempest plug-ins. These have to be installed manually, depending on your OpenStack installation.

  2. View all the OpenStack components installed on your machine:

    # openstack-status
  3. Install the appropriate tempest plug-in for each component you have, for example:

    # yum install python-glance-tests python-keystone-tests python-horizon-tests-tempest python-neutron-tests python-cinder-tests python-nova-tests python-swift-tests python-ceilometer-tests python-gnocchi-tests python-aodh-tests

    See Section 3.3.1, “List of Tempest Plug-in Packages” for a list of the tempest plug-ins for each OpenStack component.

3.3.1. List of Tempest Plug-in Packages

ComponentPackage Name

aodh

python-aodh-tests

ceilometer

python-ceilometer-tests

cinder

python-cinder-tests

designate

python-designate-tests-tempest

glance

python-glance-tests

gnocchi

python-gnocchi-tests

heat

python-heat-tests

horizon

python-horizon-tests-tempest

ironic

python-ironic-tests

ironic-inspector

python-ironic-inspector-tests

keystone

python-keystone-tests

magnum

python-magnum-tests

manila

python-manila-tests

mistral

python-mistral-tests

murano

python-murano-tests

neutron

python-neutron-tests

neutron-fwaas

python-neutron-fwaas-tests

neutron-lbaas

python-neutron-lbaas-tests

neutron-vpnaas

python-neutron-vpnaas-tests

nova

python-nova-tests

sahara

python-sahara-tests-tempest

swift

python-swift-tests

trove

python-trove-tests

watcher

python-watcher-tests-tempest

zaqar

python-zaqar-tests