From cdc0008bd347dff86928edba0c750ecaa067b1b0 Mon Sep 17 00:00:00 2001 From: Adam Dyess Date: Thu, 6 Feb 2020 08:39:21 -0600 Subject: [PATCH] incorporate team comments --- .../charm_tests/designate/__init__.py | 57 ----------------- zaza/openstack/charm_tests/designate/tests.py | 63 ++++++++++++++++++- 2 files changed, 60 insertions(+), 60 deletions(-) diff --git a/zaza/openstack/charm_tests/designate/__init__.py b/zaza/openstack/charm_tests/designate/__init__.py index cc68938..78c15a3 100644 --- a/zaza/openstack/charm_tests/designate/__init__.py +++ b/zaza/openstack/charm_tests/designate/__init__.py @@ -13,60 +13,3 @@ # limitations under the License. """Collection of code for setting up and testing designate.""" -import zaza.openstack.charm_tests.test_utils as test_utils -import zaza.openstack.utilities.openstack as openstack_utils - - -class BaseDesignateTest(test_utils.OpenStackBaseTest): - """Base for Designate charm tests.""" - - @classmethod - def setUpClass(cls, application_name=None, model_alias=None): - """Run class setup for running Designate charm operation tests.""" - application_name = application_name or "designate" - model_alias = model_alias or "" - super(BaseDesignateTest, cls).setUpClass(application_name, model_alias) - os_release = openstack_utils.get_os_release - - if os_release() >= os_release('bionic_rocky'): - cls.designate_svcs = [ - 'designate-agent', 'designate-api', 'designate-central', - 'designate-mdns', 'designate-worker', 'designate-sink', - 'designate-producer', - ] - else: - cls.designate_svcs = [ - 'designate-agent', 'designate-api', 'designate-central', - 'designate-mdns', 'designate-pool-manager', 'designate-sink', - 'designate-zone-manager', - ] - - # Get keystone session - cls.post_xenial_queens = os_release() >= os_release('xenial_queens') - overcloud_auth = openstack_utils.get_overcloud_auth() - cls.keystone = openstack_utils.get_keystone_client(overcloud_auth) - - if cls.post_xenial_queens: - keystone_session = openstack_utils.get_overcloud_keystone_session() - cls.designate = openstack_utils.get_designate_session_client( - session=keystone_session - ) - cls.zones_list = cls.designate.zones.list - cls.zones_delete = cls.designate.zones.delete - else: - # Authenticate admin with designate endpoint - designate_ep = cls.keystone.service_catalog.url_for( - service_type='dns', - interface='publicURL') - keystone_ep = cls.keystone.service_catalog.url_for( - service_type='identity', - interface='publicURL') - cls.designate = openstack_utils.get_designate_session_client( - version=1, - auth_url=keystone_ep, - username="admin", - password="openstack", - tenant_name="admin", - endpoint=designate_ep) - cls.zones_list = cls.designate.domains.list - cls.zones_delete = cls.designate.domains.delete diff --git a/zaza/openstack/charm_tests/designate/tests.py b/zaza/openstack/charm_tests/designate/tests.py index 5155fe8..babfe9e 100644 --- a/zaza/openstack/charm_tests/designate/tests.py +++ b/zaza/openstack/charm_tests/designate/tests.py @@ -20,7 +20,63 @@ import designateclient.v1.domains as domains import designateclient.v1.records as records import designateclient.v1.servers as servers import zaza.openstack.utilities.juju as zaza_juju -from zaza.openstack.charm_tests.designate import BaseDesignateTest +import zaza.openstack.charm_tests.test_utils as test_utils +import zaza.openstack.utilities.openstack as openstack_utils + + +class BaseDesignateTest(test_utils.OpenStackBaseTest): + """Base for Designate charm tests.""" + + @classmethod + def setUpClass(cls, application_name=None, model_alias=None): + """Run class setup for running Designate charm operation tests.""" + application_name = application_name or "designate" + model_alias = model_alias or "" + super(BaseDesignateTest, cls).setUpClass(application_name, model_alias) + os_release = openstack_utils.get_os_release + + if os_release() >= os_release('bionic_rocky'): + cls.designate_svcs = [ + 'designate-agent', 'designate-api', 'designate-central', + 'designate-mdns', 'designate-worker', 'designate-sink', + 'designate-producer', + ] + else: + cls.designate_svcs = [ + 'designate-agent', 'designate-api', 'designate-central', + 'designate-mdns', 'designate-pool-manager', 'designate-sink', + 'designate-zone-manager', + ] + + # Get keystone session + cls.post_xenial_queens = os_release() >= os_release('xenial_queens') + overcloud_auth = openstack_utils.get_overcloud_auth() + keystone = openstack_utils.get_keystone_client(overcloud_auth) + + if cls.post_xenial_queens: + keystone_session = openstack_utils.get_overcloud_keystone_session() + cls.designate = openstack_utils.get_designate_session_client( + session=keystone_session + ) + cls.zones_list = cls.designate.zones.list + cls.zones_delete = cls.designate.zones.delete + else: + # Authenticate admin with designate endpoint + designate_ep = keystone.service_catalog.url_for( + service_type='dns', + interface='publicURL') + keystone_ep = keystone.service_catalog.url_for( + service_type='identity', + interface='publicURL') + cls.designate = openstack_utils.get_designate_session_client( + version=1, + auth_url=keystone_ep, + username="admin", + password="openstack", + tenant_name="admin", + endpoint=designate_ep) + cls.zones_list = cls.designate.domains.list + cls.zones_delete = cls.designate.domains.delete class DesignateTests(BaseDesignateTest): @@ -87,8 +143,8 @@ class DesignateTests(BaseDesignateTest): def test_400_server_creation(self): """Simple api calls to create domain.""" - # Designate does not allow the last server to be delete so ensure ns1 - # always present + # Designate does not allow the last server to be deleted so ensure + # that ns1 is always present if self.post_xenial_queens: logging.info('Skipping server creation tests for Queens and above') return @@ -194,4 +250,5 @@ class DesignateTests(BaseDesignateTest): logging.debug('Tidy up delete test record') self.zones_delete(_domain_id) + self._wait_on_domain_gone() logging.debug('OK')