diff options
author | Dr. Jens Harbott <harbott@osism.tech> | 2022-08-29 10:46:31 +0200 |
---|---|---|
committer | Dr. Jens Harbott <frickler@offenerstapel.de> | 2022-08-29 12:09:40 +0000 |
commit | 568ea2aec23caab6c47452b80940290c2f48caf3 (patch) | |
tree | 50910835af33ac5f652b9e7ec1e407d4a5ab165c | |
parent | ee6eebea9bdd1a15554f2e64d6ef498dff51f4b8 (diff) | |
download | tempest-568ea2aec23caab6c47452b80940290c2f48caf3.tar.gz |
Fix creds cleanup for system scope
System-scoped credentials don't have an associated project, so don't try
to cleanup the project nor its default security group.
Related-Bug: 1988026
Change-Id: I32707d1e7b4465cb0d713b7c245f3668f70e6de7
-rw-r--r-- | tempest/lib/common/dynamic_creds.py | 35 |
1 files changed, 18 insertions, 17 deletions
diff --git a/tempest/lib/common/dynamic_creds.py b/tempest/lib/common/dynamic_creds.py index be8c0e890..d687eb503 100644 --- a/tempest/lib/common/dynamic_creds.py +++ b/tempest/lib/common/dynamic_creds.py @@ -559,23 +559,24 @@ class DynamicCredentialProvider(cred_provider.CredentialProvider): except lib_exc.NotFound: LOG.warning("user with name: %s not found for delete", creds.username) - # NOTE(zhufl): Only when neutron's security_group ext is - # enabled, cleanup_default_secgroup will not raise error. But - # here cannot use test_utils.is_extension_enabled for it will cause - # "circular dependency". So here just use try...except to - # ensure tenant deletion without big changes. - try: - if self.neutron_available: - self.cleanup_default_secgroup( - self.security_groups_admin_client, creds.tenant_id) - except lib_exc.NotFound: - LOG.warning("failed to cleanup tenant %s's secgroup", - creds.tenant_name) - try: - self.creds_client.delete_project(creds.tenant_id) - except lib_exc.NotFound: - LOG.warning("tenant with name: %s not found for delete", - creds.tenant_name) + if creds.tenant_id: + # NOTE(zhufl): Only when neutron's security_group ext is + # enabled, cleanup_default_secgroup will not raise error. But + # here cannot use test_utils.is_extension_enabled for it will + # cause "circular dependency". So here just use try...except to + # ensure tenant deletion without big changes. + try: + if self.neutron_available: + self.cleanup_default_secgroup( + self.security_groups_admin_client, creds.tenant_id) + except lib_exc.NotFound: + LOG.warning("failed to cleanup tenant %s's secgroup", + creds.tenant_name) + try: + self.creds_client.delete_project(creds.tenant_id) + except lib_exc.NotFound: + LOG.warning("tenant with name: %s not found for delete", + creds.tenant_name) # if cred is domain scoped, delete ephemeral domain # do not delete default domain |