Chapter 2. Installing the Integration Test Suite (tempest)
You can install the Integration Test Suite either with director or with a manual installation.
- To install the Integration Test Suite with director, see Installing the Integration Test Suite with director.
- To manually install the Integration Test Suite, Installing the Integration Test Suite manually.
2.1. Prerequisites
- An undercloud installation. For more information, see Installing the undercloud.
- An overcloud deployment. For more information, see Creating a basic overcloud with CLI tools.
2.2. Installing the Integration Test Suite with director
Use the Red Hat OpenStack Platform (RHOSP) director to install the test suite automatically.
Prerequisites
-
You have installed the
python3-tripleoclient
packages. For more information, see Installing director packages in the Director Installation and Usage guide.
Procedure
-
Log in to the undercloud host as the
stack
user. -
Edit the
undercloud.conf
file located in the home directory of thestack
user. Set the
enable_tempest
parameter totrue
.enable_tempest = true
Run the
openstack undercloud install
command to include the extra configuration in the undercloud:$ openstack undercloud install
2.3. Installing the Integration Test Suite manually
If you do not want to install the Integration Test Suite (tempest) automatically with director, you can perform the installation manually later. You must ensure that you have a basic network configuration, install the Integration Test Suite packages, and create a configuration file that contains details about your OpenStack services and other testing behaviour switches.
Procedure
Ensure that the following networks are available within your Red Hat OpenStack Platform (RHOSP) environment:
- An external network that can provide a floating IP.
A private network.
Connect these networks through a router.
To create the private network, specify the following options according to your network deployment:
$ openstack network create <network_name> --share $ openstack subnet create <subnet_name> --subnet-range <address/prefix> \ --network <network_name> $ openstack router create <router_name> $ openstack router add subnet <router_name> <subnet_name>
To create the public network, specify the following options according to your network deployment:
$ openstack network create <network_name> --external \ --provider-network-type flat \ --provider-physical-network datacentre $ 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>
Install the packages related to the Integration Test Suite:
$ sudo dnf -y install openstack-tempest
This command does not install any tempest plugins. You must install the plugins manually, depending on your RHOSP installation.
Install the appropriate tempest plugin for each component in your environment. For example, enter the following command to install the keystone, neutron, cinder, and telemetry plugins:
$ sudo dnf install python3-keystone-tests-tempest python3-neutron-tests-tempest python3-cinder-tests-tempest python3-telemetry-tests-tempest
For a full list of packages, see Integration Test Suite packages.
You can also install the openstack-tempest-all
package. This package contains all of the tempest plugins.
2.3.1. Integration Test Suite packages
Use dnf search
to retrieve a list of tempest test packages:
$ sudo dnf search $(openstack service list -c Name -f value) 2>/dev/null | grep test | awk '{print $1}'
Component | Package Name |
---|---|
barbican | python3-barbican-tests-tempest |
cinder | python3-cinder-tests-tempest |
designate | python3-designate-tests-tempest |
ec2-api | python3-ec2api-tests-tempest |
heat | python3-heat-tests-tempest |
ironic | python3-ironic-tests-tempest |
keystone | python3-keystone-tests-tempest |
kuryr | python3-kuryr-tests-tempest |
manila | python3-manila-tests-tempest |
mistral | python3-mistral-tests-tempest |
networking-bgvpn | python3-networking-bgpvpn-tests-tempest |
networking-l2gw | python3-networking-l2gw-tests-tempest |
neutron | python3-neutron-tests-tempest |
nova-join | python3-novajoin-tests-tempest |
octavia | python3-octavia-tests-tempest |
patrole | python3-patrole-tests-tempest |
telemetry | python3-telemetry-tests-tempest |
tripleo-common | python3-tripleo-common-tests-tempest |
zaqar | python3-zaqar-tests-tempest |
The python3-telemetry-tests-tempest
package contains plugins for aodh, panko, gnocchi, and ceilometer tests. The python3-ironic-tests-tempest
package contains plugins for ironic and ironic-inspector.