From 378c1baeecdd66ea8c74f1046e2e54297d9f204d Mon Sep 17 00:00:00 2001 From: Viktor Tikkanen Date: Thu, 7 Jan 2016 11:59:02 +0200 Subject: [PATCH] Searching for shared private networks Tempest suite assumes that there is at least one shared private network in the system. get_private_net() returns now first found shared private network (instead of first found private network). Change-Id: I892abcacff2c0349dd42444a632f71c6a14a0861 Signed-off-by: Viktor Tikkanen --- testcases/VIM/OpenStack/CI/libraries/run_tempest.py | 13 ++++++++++--- testcases/functest_utils.py | 4 ++-- 2 files changed, 12 insertions(+), 5 deletions(-) diff --git a/testcases/VIM/OpenStack/CI/libraries/run_tempest.py b/testcases/VIM/OpenStack/CI/libraries/run_tempest.py index e551ed3b1..f056e5e9e 100644 --- a/testcases/VIM/OpenStack/CI/libraries/run_tempest.py +++ b/testcases/VIM/OpenStack/CI/libraries/run_tempest.py @@ -18,6 +18,7 @@ import subprocess import sys import yaml import keystoneclient.v2_0.client as ksclient +from neutronclient.v2_0 import client as neutronclient modes = ['full', 'smoke', 'baremetal', 'compute', 'data_processing', 'identity', 'image', 'network', 'object_storage', 'orchestration', @@ -65,8 +66,6 @@ TENANT_NAME = functest_yaml.get("tempest").get("identity").get("tenant_name") TENANT_DESCRIPTION = functest_yaml.get("tempest").get("identity").get("tenant_description") USER_NAME = functest_yaml.get("tempest").get("identity").get("user_name") USER_PASSWORD = functest_yaml.get("tempest").get("identity").get("user_password") -NEUTRON_PRIVATE_NET_NAME = functest_yaml.get("general"). \ - get("openstack").get("neutron_private_net_name") DEPLOYMENT_MAME = functest_yaml.get("rally").get("deployment_name") RALLY_INSTALLATION_DIR = functest_yaml.get("general").get("directories").get("dir_rally_inst") @@ -172,8 +171,16 @@ def configure_tempest(): return False logger.debug(" Updating fixed_network_name...") + private_net_name = "" + creds_neutron = functest_utils.get_credentials("neutron") + neutron_client = neutronclient.Client(**creds_neutron) + private_net = functest_utils.get_private_net(neutron_client) + if private_net is None: + logger.error("No shared private networks found.") + else: + private_net_name = private_net['name'] cmd = "crudini --set "+tempest_conf_file+" compute fixed_network_name " \ - +NEUTRON_PRIVATE_NET_NAME + +private_net_name functest_utils.execute_command(cmd,logger) logger.debug(" Updating non-admin credentials...") diff --git a/testcases/functest_utils.py b/testcases/functest_utils.py index 682c33ee3..0734ccbde 100644 --- a/testcases/functest_utils.py +++ b/testcases/functest_utils.py @@ -346,12 +346,12 @@ def update_cinder_quota(cinder_client, tenant_id, vols_quota, snapshots_quota,gi return False def get_private_net(neutron_client): - # Checks if there is an existing private network + # Checks if there is an existing shared private network networks = neutron_client.list_networks()['networks'] if len(networks) == 0: return None for net in networks: - if net['router:external'] == False: + if (net['router:external'] == False) and (net['shared'] == True): return net return None -- 2.16.6