Tempest plugin for Octavia
Go to file
Carlos Goncalves 7cca66d7a1 Enable KVM libvirt type on all scenario jobs
A subset of nodepool providers have KVM nested virtualization enabled.
At present, examples are Vexxhost, OVH, FortNebula and Limestone.

We've had a pre-run script for CI to enable KVM when running in one of
those providers. This has some drawbacks:
1. With Zuul v3, DEVSTACK_GATE_LIBVIRT_TYPE is obsoleted in favor of
   LIBVIRT_TYPE in devstack_localrc.
2. The list was outdated (e.g. Vexxhost and FortNebula were not in).
3. Some of the nested virt friendly providers have mixed KVM/TCG
   servers.
3. Enablement of nested virtualization would require updating of the KVM
   providers list in our side.

When LIBVIR_TYPE=KVM, devstack checks if KVM is really available (via
devstack/lib/nova). If it is not, it falls back to qemu (TCG). This
check is available since at least Mitaka.

Also, some provider nodes expose a generic CPU model. Libvirt matches
the named CPU model to the closest from the host. As a result, the
matched one may not include the CPUID parameter which seems to be
required for nested virtualization. This find-by-match (cpu_mode option
in Nova) can be switched "host-passthrough" in which case will cause
libvirt to tell KVM to passthrough the host CPU with no modifications.
The disadvantage of this mode is guests can only be migrated to an
exactly matching host CPU, but we don't need this in CI.

Depends-On: https://review.opendev.org/#/c/703324/

Change-Id: I6c4596aa9cc2d7f7703c5acb54fdaed97756788a
2020-02-19 18:56:27 +01:00
doc Generate PDF documentation 2019-09-13 10:48:40 -07:00
octavia_tempest_plugin Merge "Run tests with algorithm supported by provider driver" 2019-12-27 05:20:21 +00:00
playbooks/act_stby_iptables Enable KVM libvirt type on all scenario jobs 2020-02-19 18:56:27 +01:00
releasenotes Add listener client authentication scenario tests 2019-11-10 08:53:35 +00:00
zuul.d Enable KVM libvirt type on all scenario jobs 2020-02-19 18:56:27 +01:00
.coveragerc Initial setup of the octavia-tempest-plugin repo 2017-05-11 18:32:01 +00:00
.gitignore Create api+scenario tests for pools 2018-05-18 16:08:21 -07:00
.gitreview OpenDev Migration Patch 2019-04-19 19:35:19 +00:00
.mailmap Initial setup of the octavia-tempest-plugin repo 2017-05-11 18:32:01 +00:00
.stestr.conf Create api+scenario tests for pools 2018-05-18 16:08:21 -07:00
CONTRIBUTING.rst Update links in README.rst 2018-08-13 10:13:30 +02:00
HACKING.rst Update links in README.rst 2018-08-13 10:13:30 +02:00
LICENSE Initial setup of the octavia-tempest-plugin repo 2017-05-11 18:32:01 +00:00
README.rst Generate PDF documentation 2019-09-13 10:48:40 -07:00
babel.cfg Initial setup of the octavia-tempest-plugin repo 2017-05-11 18:32:01 +00:00
requirements.txt Add missing keystoneauth1 to requirements.txt 2019-08-01 13:31:10 +02:00
setup.cfg Change openstack-dev to openstack-discuss 2018-12-24 01:11:42 +00:00
setup.py Updated from global requirements 2017-06-06 01:53:58 +00:00
test-requirements.txt Migrate to stestr 2018-05-24 11:20:37 -07:00
tox.ini Generate PDF documentation 2019-09-13 10:48:40 -07:00

README.rst

Octavia Tempest Plugin

Team and repository tags

image

Tempest integration of Octavia

This project contains the Tempest plugin for the Octavia project for OpenStack Load Balancing.

For more information about Octavia see: https://docs.openstack.org/octavia/latest/

For more information about Tempest plugins see: https://docs.openstack.org/tempest/latest/plugin.html

Installing

Clone this repository to the destination machine, and call from the repo:

$ pip install -e .

Running the tests

To run all the tests from this plugin, call from the tempest repo:

$ tox -e all-plugin -- octavia_tempest_plugin

To run a single test case, call with full path, for example:

$ tox -e all-plugin -- octavia_tempest_plugin.tests.scenario.v2.test_traffic_ops.TrafficOperationsScenarioTest.test_basic_traffic

To retrieve a list of all tempest tests, run:

$ testr list-tests