diff options
author | vitikkan <viktor.tikkanen@nokia.com> | 2016-05-10 08:58:00 +0300 |
---|---|---|
committer | vitikkan <viktor.tikkanen@nokia.com> | 2016-05-10 10:57:08 +0300 |
commit | 668c0134d35a2041012851ae4a38de2977d6aafc (patch) | |
tree | 02dc15ed885c2d42ebb7a75ff259709b4870abc5 | |
parent | 20627d3d822e78e8a03af5c39a94e18725e858c7 (diff) |
Creating private network for Tempest
Since functest-net will be obsolete, own private network,
subnet and router is taken into use for Tempest test.
JIRA: FUNCTEST-239
Change-Id: I2b9f6aae74dc36decf305a4531fe0a071031aca3
Signed-off-by: vitikkan <viktor.tikkanen@nokia.com>
-rw-r--r-- | ci/config_functest.yaml | 6 | ||||
-rw-r--r-- | testcases/VIM/OpenStack/CI/libraries/run_tempest.py | 59 |
2 files changed, 29 insertions, 36 deletions
diff --git a/ci/config_functest.yaml b/ci/config_functest.yaml index 2107a13eb..92e3fb8a4 100644 --- a/ci/config_functest.yaml +++ b/ci/config_functest.yaml @@ -62,8 +62,10 @@ tempest: tenant_description: Tenant for Tempest test suite user_name: tempest user_password: tempest - input-scenario: - ssh_user_regex: '[["^.*[Cc]irros.*$", "cirros"], ["^.*[Tt]est[VvMm].*$", "cirros"], ["^.*rally_verify.*$", "cirros"]]' + private_net_name: tempest-net + private_subnet_name: tempest-subnet + private_subnet_cidr: 192.168.150.0/24 + router_name: tempest-router rally: deployment_name: opnfv-rally diff --git a/testcases/VIM/OpenStack/CI/libraries/run_tempest.py b/testcases/VIM/OpenStack/CI/libraries/run_tempest.py index 02d9b331a..4c8e61a72 100644 --- a/testcases/VIM/OpenStack/CI/libraries/run_tempest.py +++ b/testcases/VIM/OpenStack/CI/libraries/run_tempest.py @@ -20,7 +20,6 @@ import re import requests import shutil import subprocess -import sys import time import yaml import ConfigParser @@ -68,14 +67,16 @@ f.close() TEST_DB = functest_yaml.get("results").get("test_db_url") MODE = "smoke" +PRIVATE_NET_NAME = functest_yaml.get("tempest").get("private_net_name") +PRIVATE_SUBNET_NAME = functest_yaml.get("tempest").get("private_subnet_name") +PRIVATE_SUBNET_CIDR = functest_yaml.get("tempest").get("private_subnet_cidr") +ROUTER_NAME = functest_yaml.get("tempest").get("router_name") 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") -SSH_USER_REGEX = functest_yaml.get("tempest").get("input-scenario").get( - "ssh_user_regex") DEPLOYMENT_MAME = functest_yaml.get("rally").get("deployment_name") RALLY_INSTALLATION_DIR = functest_yaml.get("general").get("directories").get( "dir_rally_inst") @@ -133,7 +134,7 @@ def push_results_to_db(case, payload, criteria): def create_tempest_resources(): ks_creds = os_utils.get_credentials("keystone") - logger.info("Creating tenant and user for Tempest suite") + logger.debug("Creating tenant and user for Tempest suite") keystone = ksclient.Client(**ks_creds) tenant_id = os_utils.create_tenant(keystone, TENANT_NAME, @@ -146,25 +147,26 @@ def create_tempest_resources(): if user_id == '': logger.error("Error : Failed to create %s user" % USER_NAME) - -def free_tempest_resources(): - ks_creds = os_utils.get_credentials("keystone") - logger.info("Deleting tenant and user for Tempest suite)") - keystone = ksclient.Client(**ks_creds) - - user_id = os_utils.get_user_id(keystone, USER_NAME) - if user_id == '': - logger.error("Error : Failed to get id of %s user" % USER_NAME) - else: - if not os_utils.delete_user(keystone, user_id): - logger.error("Error : Failed to delete %s user" % USER_NAME) - - tenant_id = os_utils.get_tenant_id(keystone, TENANT_NAME) - if tenant_id == '': - logger.error("Error : Failed to get id of %s tenant" % TENANT_NAME) + logger.debug("Creating private network for Tempest suite") + creds_neutron = os_utils.get_credentials("neutron") + neutron_client = neutronclient.Client(**creds_neutron) + network_dic = os_utils.create_network_full(logger, + neutron_client, + PRIVATE_NET_NAME, + PRIVATE_SUBNET_NAME, + ROUTER_NAME, + PRIVATE_SUBNET_CIDR) + if network_dic: + if not os_utils.update_neutron_net(neutron_client, + network_dic['net_id'], + shared=True): + logger.error("Failed to update private network...") + exit(-1) + else: + logger.debug("Network '%s' is available..." % PRIVATE_NET_NAME) else: - if not os_utils.delete_tenant(keystone, tenant_id): - logger.error("Error : Failed to delete %s tenant" % TENANT_NAME) + logger.error("Private network creation failed") + exit(-1) def configure_tempest(mode): @@ -207,16 +209,7 @@ def configure_tempest(mode): logger.debug("Updating selected tempest.conf parameters...") config = ConfigParser.RawConfigParser() config.read(tempest_conf_file) - private_net_name = "" - creds_neutron = os_utils.get_credentials("neutron") - neutron_client = neutronclient.Client(**creds_neutron) - private_net = os_utils.get_private_net(neutron_client) - if private_net is None: - logger.error("No shared private networks found.") - sys.exit(1) - else: - private_net_name = private_net['name'] - config.set('compute', 'fixed_network_name', private_net_name) + config.set('compute', 'fixed_network_name', PRIVATE_NET_NAME) config.set('identity', 'tenant_name', TENANT_NAME) config.set('identity', 'username', USER_NAME) config.set('identity', 'password', USER_PASSWORD) @@ -331,8 +324,6 @@ def main(): if args.noclean: exit(0) - free_tempest_resources() - if __name__ == '__main__': main() |