docs: Update TESTING.rst with gate information about ovs

We used to compile from source for functional and fullstack jobs. For
functional job we skip single test and avoid compiling. We still do
compile from source for fullstack job. This patch adds justification to
TESTING.rst document.

Change-Id: I60c272bba6fa9eeefa29dfa4faa69433989efde2
This commit is contained in:
Jakub Libosvar 2017-04-12 15:34:41 +02:00
parent 87cb9d8552
commit b96029f6a2

View File

@ -150,10 +150,7 @@ Functional tests (neutron/tests/functional/) are intended to
validate actual system interaction. Mocks should be used sparingly,
if at all. Care should be taken to ensure that existing system
resources are not modified and that resources created in tests are
properly cleaned up both on test success and failure. Note that when run
at the gate, the functional tests compile OVS from source. Check out
neutron/tests/contrib/gate_hook.sh. Other jobs presently use OVS from
packages.
properly cleaned up both on test success and failure.
Let's examine the benefits of the functional testing framework.
Neutron offers a library called 'ip_lib' that wraps around the 'ip' binary.
@ -210,6 +207,15 @@ attributes and configures dnsmasq for that network, the test:
namespace.
* Assert that the device successfully obtained the expected IP address.
Gate exceptions
+++++++++++++++
Test neutron.tests.functional.agent.test_ovs_flows.OVSFlowTestCase.\
test_install_flood_to_tun is currently skipped on upstream gate because Ubuntu
Xenial 16.04 contains openvswitch 2.5.0. This version contains bug where appctl
command prints wrong output for Final flow. It's been fixed in openvswitch
2.5.1 in `this commit <https://github.com/openvswitch/ovs/commit/8c0b419a0b9ac0141d6973dcc80306dfc6a83d31>`_.
Fullstack Tests
~~~~~~~~~~~~~~~
@ -303,6 +309,19 @@ bridge connected to that port. The test is a true integration test, in the
sense that it invokes the API and then asserts that Neutron interacted with
the hypervisor appropriately.
Gate exceptions
+++++++++++++++
Currently we compile openvswitch kernel module from source for fullstack job on
the gate. The reason is to fix bug related to local VXLAN tunneling which is
present in current Ubuntu Xenial 16.04 kernel. Kernel was fixed with this
`commit <https://github.com/torvalds/linux/commit/bbec7802c6948c8626b71a4fe31283cb4691c358>`_
and backported with this
`openvswitch commit <https://github.com/openvswitch/ovs/commit/b1c74f35273122db4ce2728a70fd34b98f525434>`_.
Due to kernel compatibility, Ubuntu Trusty (Mitaka release) uses openvswitch
version 2.5.1. Ubuntu Xenial jobs use 2.6.1. Both versions contain fixes for
local VXLAN tunneling.
API Tests
~~~~~~~~~