diff options
author | Cédric Ollivier <cedric.ollivier@orange.com> | 2019-07-10 22:13:37 +0200 |
---|---|---|
committer | Cédric Ollivier <cedric.ollivier@orange.com> | 2019-07-11 10:01:20 +0200 |
commit | 0c55a91ceed5cdcbe03eec3b0b731e501bf51773 (patch) | |
tree | aba074544f09b01f18be4c2e212c2ff58e941c2c | |
parent | 31e2e6494aa8688950fa56be4e438eb8bd0104d6 (diff) |
Allow scenarios without external network
It allows creating testcases leveraging on Functest scenarios without
external network. Then Rally can verify network providers by only
skipping NovaServers.boot_server_associate_and_dissociate_floating_ip
Change-Id: I07a9348214f7557195c7201466f7e37b2b980206
Signed-off-by: Cédric Ollivier <cedric.ollivier@orange.com>
(cherry picked from commit a30e0c35f248cc9225e628e3a64723b2184d6087)
-rw-r--r-- | functest/core/tenantnetwork.py | 7 | ||||
-rw-r--r-- | functest/opnfv_tests/openstack/rally/blacklist.yaml | 5 | ||||
-rw-r--r-- | functest/opnfv_tests/openstack/rally/rally.py | 3 |
3 files changed, 13 insertions, 2 deletions
diff --git a/functest/core/tenantnetwork.py b/functest/core/tenantnetwork.py index 7b2bf8799..ae739ac36 100644 --- a/functest/core/tenantnetwork.py +++ b/functest/core/tenantnetwork.py @@ -146,6 +146,7 @@ class TenantNetwork1(testcase.TestCase): __logger = logging.getLogger(__name__) cidr = '192.168.120.0/24' shared_network = False + allow_no_fip = False def __init__(self, **kwargs): if "case_name" not in kwargs: @@ -164,6 +165,7 @@ class TenantNetwork1(testcase.TestCase): try: self.ext_net = self.get_external_network(self.cloud) except Exception: # pylint: disable=broad-except + self.ext_net = None self.__logger.exception("Cannot get the external network") self.guid = str(uuid.uuid4()) self.network = None @@ -216,7 +218,8 @@ class TenantNetwork1(testcase.TestCase): Raises: expection on error """ assert self.cloud - assert self.ext_net + if not self.allow_no_fip: + assert self.ext_net provider = {} if hasattr(config.CONF, '{}_network_type'.format(self.case_name)): provider["network_type"] = getattr( @@ -251,7 +254,7 @@ class TenantNetwork1(testcase.TestCase): self.router = self.cloud.create_router( name='{}-router_{}'.format(self.case_name, self.guid), - ext_gateway_net_id=self.ext_net.id) + ext_gateway_net_id=self.ext_net.id if self.ext_net else None) self.__logger.debug("router: %s", self.router) self.cloud.add_router_interface(self.router, subnet_id=self.subnet.id) diff --git a/functest/opnfv_tests/openstack/rally/blacklist.yaml b/functest/opnfv_tests/openstack/rally/blacklist.yaml index 77c514245..beed15cb9 100644 --- a/functest/opnfv_tests/openstack/rally/blacklist.yaml +++ b/functest/opnfv_tests/openstack/rally/blacklist.yaml @@ -28,3 +28,8 @@ functionality: - no_net_trunk_service tests: - '^NeutronTrunk' + - + functions: + - no_floating_ip + tests: + - NovaServers.boot_server_associate_and_dissociate_floating_ip diff --git a/functest/opnfv_tests/openstack/rally/rally.py b/functest/opnfv_tests/openstack/rally/rally.py index fccb3b192..6ba22ba8e 100644 --- a/functest/opnfv_tests/openstack/rally/rally.py +++ b/functest/opnfv_tests/openstack/rally/rally.py @@ -66,6 +66,7 @@ class RallyBase(singlevm.VmReady2): visibility = 'public' shared_network = True + allow_no_fip = True def __init__(self, **kwargs): """Initialize RallyBase object.""" @@ -334,6 +335,8 @@ class RallyBase(singlevm.VmReady2): func_list.append("no_migration") if not self._network_trunk_supported(): func_list.append("no_net_trunk_service") + if not self.ext_net: + func_list.append("no_floating_ip") if 'functionality' in black_list_yaml.keys(): for item in black_list_yaml['functionality']: |