Add SRIOV support 31/36631/1
authorJing Zhang <jing.c.zhang@nokia.com>
Fri, 31 Mar 2017 13:20:46 +0000 (09:20 -0400)
committerJing Lu <lvjing5@huawei.com>
Wed, 28 Jun 2017 08:53:33 +0000 (08:53 +0000)
commit1dae2ed45bb425de276441c99da64b21ee4f97de
treecf9b71dff335141178aa3595bda1c4f22dfacf42
parentac370f93eb345f9aee456cb19724902587c10209
Add SRIOV support

A generic provider network solution is introduced. To identify whether a network specified in the test case is a provider network new attributes are introduced in the test case network section:

networks:
  test-net:
    cidr: '192.168.1.0/24'
    provider: "sriov"
    physical_network: 'physnet1'

If the "provider" attribute is present, the network is an existing provider network. If the value is "sriov", binding:vnic_type=direct is added to the interface in the heat deployment template. In orchestrator/heat.py, the interface creating functions are given a new parameter that tells if the network in use is a provider network. The benchmark/contexts/model.py is changed to store the value of the provider attribute from the test case and function calls to port creation is updated with the provider parameter. The same change is made in contexts/heat.py as well. Also calls for creating a new tenant network is replaced for creating a new provider network if the provider attribute is present.

Update-1: Change test_model.py
Update-2: Per comment, change comment style to """"
Update-3: Change test_heat.py
Update-4: Add unit test cases to pass coverage test
Update-5: Add SRIOV provider network example in opnfv_yardstick_tc008.yaml
Update-6: Per comment, remove empty line in orchestrator/test_heat.py
Update-7: Per comment, change comment lines in orchestrator/test_heat.py
Update-8: Add more unit test cases to pass coverage test
Update-9: Change to create SRIOV provider network on the fly so as to support co-current test runs
Update-10: Per comment, init physical_network to 'physnet1'

Change-Id: I76004c4fcc9bffcfd8ed021fd647e0cecb346ef4
JIRA: YARDSTICK-612
Signed-off-by: Jing Zhang <jing.c.zhang@nokia.com>
(cherry picked from commit f51ba41255d6ab2c03fd62a044d372b73b496459)
tests/opnfv/test_cases/opnfv_yardstick_tc008.yaml
tests/unit/benchmark/contexts/test_heat.py
tests/unit/benchmark/contexts/test_model.py
tests/unit/orchestrator/__init__.py [new file with mode: 0644]
tests/unit/orchestrator/test_heat.py
yardstick/benchmark/contexts/heat.py
yardstick/benchmark/contexts/model.py
yardstick/orchestrator/heat.py