From 8a6c7a2be06f25f9c8c18a80b1b54c3b3be8b62a Mon Sep 17 00:00:00 2001 From: spisarski Date: Thu, 2 Mar 2017 12:01:34 -0700 Subject: Added the ability to give the tests the ability to add in flavor metadata. NFVI's configured for OVS/DPDK and fd.io scenarios required special metadata for flavors in order for VM instances to be activated. This patch allows for setting a value to be applied to all tests. With this change, the default value is being removed that only partially addressed this issue. JIRA: SNAPS-38 Change-Id: Ic42944a849f710f631fe7ac6fbefb720a73f0b77 Signed-off-by: spisarski --- snaps/test_suite_builder.py | 45 +++++++++++++++++++++++++-------------------- 1 file changed, 25 insertions(+), 20 deletions(-) (limited to 'snaps/test_suite_builder.py') diff --git a/snaps/test_suite_builder.py b/snaps/test_suite_builder.py index b12602d..1768921 100644 --- a/snaps/test_suite_builder.py +++ b/snaps/test_suite_builder.py @@ -134,7 +134,8 @@ def add_openstack_api_tests(suite, source_filename, ext_net_name, http_proxy_str def add_openstack_integration_tests(suite, source_filename, ext_net_name, proxy_settings=None, ssh_proxy_cmd=None, - use_keystone=True, use_floating_ips=True, log_level=logging.INFO): + use_keystone=True, flavor_metadata=None, use_floating_ips=True, + log_level=logging.INFO): """ Adds tests written to exercise all long-running OpenStack integration tests meaning they will be creating VM instances and potentially performing some SSH functions through floating IPs @@ -145,6 +146,8 @@ def add_openstack_integration_tests(suite, source_filename, ext_net_name, proxy_ :param ssh_proxy_cmd: the command your environment requires for creating ssh connections through a proxy :param use_keystone: when True, tests requiring direct access to Keystone are added as these need to be running on a host that has access to the cloud's private network + :param flavor_metadata: dict() object containing the metadata required by your flavor based on your configuration: + (i.e. {'hw:mem_page_size': 'large'}) :param use_floating_ips: when true, all tests requiring Floating IPs will be added to the suite :param log_level: the logging level :return: None as the tests will be adding to the 'suite' parameter object @@ -155,60 +158,62 @@ def add_openstack_integration_tests(suite, source_filename, ext_net_name, proxy_ # Creator Object tests suite.addTest(OSIntegrationTestCase.parameterize(CreateSecurityGroupTests, source_filename, ext_net_name, http_proxy_str=proxy_settings, use_keystone=use_keystone, - log_level=log_level)) + flavor_metadata=flavor_metadata, log_level=log_level)) suite.addTest(OSIntegrationTestCase.parameterize(CreateImageSuccessTests, source_filename, ext_net_name, http_proxy_str=proxy_settings, use_keystone=use_keystone, - log_level=log_level)) + flavor_metadata=flavor_metadata, log_level=log_level)) suite.addTest(OSIntegrationTestCase.parameterize(CreateImageNegativeTests, source_filename, ext_net_name, http_proxy_str=proxy_settings, use_keystone=use_keystone, - log_level=log_level)) + flavor_metadata=flavor_metadata, log_level=log_level)) suite.addTest(OSIntegrationTestCase.parameterize(CreateMultiPartImageTests, source_filename, ext_net_name, http_proxy_str=proxy_settings, use_keystone=use_keystone, - log_level=log_level)) + flavor_metadata=flavor_metadata, log_level=log_level)) suite.addTest(OSIntegrationTestCase.parameterize(CreateKeypairsTests, source_filename, ext_net_name, http_proxy_str=proxy_settings, use_keystone=use_keystone, - log_level=log_level)) + flavor_metadata=flavor_metadata, log_level=log_level)) suite.addTest(OSIntegrationTestCase.parameterize(CreateNetworkSuccessTests, source_filename, ext_net_name, http_proxy_str=proxy_settings, use_keystone=use_keystone, - log_level=log_level)) + flavor_metadata=flavor_metadata, log_level=log_level)) suite.addTest(OSIntegrationTestCase.parameterize(CreateRouterSuccessTests, source_filename, ext_net_name, http_proxy_str=proxy_settings, use_keystone=use_keystone, - log_level=log_level)) + flavor_metadata=flavor_metadata, log_level=log_level)) suite.addTest(OSIntegrationTestCase.parameterize(CreateRouterNegativeTests, source_filename, ext_net_name, http_proxy_str=proxy_settings, use_keystone=use_keystone, - log_level=log_level)) + flavor_metadata=flavor_metadata, log_level=log_level)) # VM Instances suite.addTest(OSIntegrationTestCase.parameterize(SimpleHealthCheck, source_filename, ext_net_name, http_proxy_str=proxy_settings, use_keystone=use_keystone, - log_level=log_level)) + flavor_metadata=flavor_metadata, log_level=log_level)) suite.addTest(OSIntegrationTestCase.parameterize(CreateInstanceSimpleTests, source_filename, ext_net_name, http_proxy_str=proxy_settings, use_keystone=use_keystone, - log_level=log_level)) + flavor_metadata=flavor_metadata, log_level=log_level)) suite.addTest(OSIntegrationTestCase.parameterize(CreateInstancePortManipulationTests, source_filename, ext_net_name, http_proxy_str=proxy_settings, use_keystone=use_keystone, - log_level=log_level)) + flavor_metadata=flavor_metadata, log_level=log_level)) suite.addTest(OSIntegrationTestCase.parameterize(InstanceSecurityGroupTests, source_filename, ext_net_name, http_proxy_str=proxy_settings, use_keystone=use_keystone, - log_level=log_level)) - suite.addTest(OSComponentTestCase.parameterize(CreateInstanceOnComputeHost, source_filename, ext_net_name, - http_proxy_str=proxy_settings, log_level=log_level)) - suite.addTest(OSComponentTestCase.parameterize(CreateInstanceFromThreePartImage, source_filename, ext_net_name, - http_proxy_str=proxy_settings, log_level=log_level)) + flavor_metadata=flavor_metadata, log_level=log_level)) + suite.addTest(OSIntegrationTestCase.parameterize(CreateInstanceOnComputeHost, source_filename, ext_net_name, + http_proxy_str=proxy_settings, use_keystone=use_keystone, + flavor_metadata=flavor_metadata, log_level=log_level)) + suite.addTest(OSIntegrationTestCase.parameterize(CreateInstanceFromThreePartImage, source_filename, ext_net_name, + http_proxy_str=proxy_settings, use_keystone=use_keystone, + flavor_metadata=flavor_metadata, log_level=log_level)) if use_floating_ips: suite.addTest(OSIntegrationTestCase.parameterize(CreateInstanceSingleNetworkTests, source_filename, ext_net_name, http_proxy_str=proxy_settings, ssh_proxy_cmd=ssh_proxy_cmd, use_keystone=use_keystone, - log_level=log_level)) + flavor_metadata=flavor_metadata, log_level=log_level)) suite.addTest(OSIntegrationTestCase.parameterize(CreateInstancePubPrivNetTests, source_filename, ext_net_name, http_proxy_str=proxy_settings, ssh_proxy_cmd=ssh_proxy_cmd, use_keystone=use_keystone, - log_level=log_level)) + flavor_metadata=flavor_metadata, log_level=log_level)) suite.addTest(OSIntegrationTestCase.parameterize(AnsibleProvisioningTests, source_filename, ext_net_name, http_proxy_str=proxy_settings, ssh_proxy_cmd=ssh_proxy_cmd, use_keystone=use_keystone, - log_level=log_level)) + flavor_metadata=flavor_metadata, log_level=log_level)) def add_openstack_staging_tests(suite, source_filename, ext_net_name, proxy_settings=None, log_level=logging.INFO): -- cgit 1.2.3-korg