From 13eb8006826e63a2e815305af31efca1422ebe89 Mon Sep 17 00:00:00 2001 From: Frode Nordahl Date: Mon, 5 Jul 2021 11:39:08 +0200 Subject: [PATCH] octavia: Add version fence for adding the LBAAS role --- zaza/openstack/charm_tests/octavia/tests.py | 17 +++++++++++------ zaza/openstack/charm_tests/policyd/tests.py | 20 ++++++++++++-------- 2 files changed, 23 insertions(+), 14 deletions(-) diff --git a/zaza/openstack/charm_tests/octavia/tests.py b/zaza/openstack/charm_tests/octavia/tests.py index 6208397..295bd51 100644 --- a/zaza/openstack/charm_tests/octavia/tests.py +++ b/zaza/openstack/charm_tests/octavia/tests.py @@ -136,9 +136,11 @@ class LBAASv2Test(test_utils.OpenStackBaseTest): cls.keystone_client = ObjectRetrierWraps( openstack_utils.get_keystone_session_client(cls.keystone_session)) - # add role to admin user for the duration of the test - grant_role_current_user(cls.keystone_client, cls.keystone_session, - LBAAS_ADMIN_ROLE) + if (openstack_utils.get_os_release() >= + openstack_utils.get_os_release('focal_wallaby')): + # add role to admin user for the duration of the test + grant_role_current_user(cls.keystone_client, cls.keystone_session, + LBAAS_ADMIN_ROLE) cls.neutron_client = ObjectRetrierWraps( openstack_utils.get_neutron_session_client(cls.keystone_session)) @@ -206,9 +208,12 @@ class LBAASv2Test(test_utils.OpenStackBaseTest): # allow resource cleanup to be run multiple times self.loadbalancers = [] - # revoke role from admin user added by this test - revoke_role_current_user(self.keystone_client, self.keystone_session, - LBAAS_ADMIN_ROLE) + if (openstack_utils.get_os_release() >= + openstack_utils.get_os_release('focal_wallaby')): + # revoke role from admin user added by this test + revoke_role_current_user(self.keystone_client, + self.keystone_session, + LBAAS_ADMIN_ROLE) for fip in self.fips: self.neutron_client.delete_floatingip(fip) diff --git a/zaza/openstack/charm_tests/policyd/tests.py b/zaza/openstack/charm_tests/policyd/tests.py index 87fd677..396f46e 100644 --- a/zaza/openstack/charm_tests/policyd/tests.py +++ b/zaza/openstack/charm_tests/policyd/tests.py @@ -679,17 +679,21 @@ class OctaviaTests(BasePolicydSpecialization): cls.keystone_client = ObjectRetrierWraps( openstack_utils.get_keystone_session_client(cls.keystone_session)) - # add role to admin user for the duration of the test - octavia_tests.grant_role_current_user( - cls.keystone_client, cls.keystone_session, - octavia_tests.LBAAS_ADMIN_ROLE) + if (openstack_utils.get_os_release() >= + openstack_utils.get_os_release('focal_wallaby')): + # add role to admin user for the duration of the test + octavia_tests.grant_role_current_user( + cls.keystone_client, cls.keystone_session, + octavia_tests.LBAAS_ADMIN_ROLE) def resource_cleanup(self): """Restore changes made by test.""" - # revoke role from admin user added by this test - octavia_tests.revoke_role_current_user( - self.keystone_client, self.keystone_session, - octavia_tests.LBAAS_ADMIN_ROLE) + if (openstack_utils.get_os_release() >= + openstack_utils.get_os_release('focal_wallaby')): + # revoke role from admin user added by this test + octavia_tests.revoke_role_current_user( + self.keystone_client, self.keystone_session, + octavia_tests.LBAAS_ADMIN_ROLE) def get_client_and_attempt_operation(self, ip): """Attempt to list available provider drivers.