summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorramishra <ramishra@redhat.com>2021-03-16 10:02:47 +0530
committerBrendan Shephard <bshephar@redhat.com>2022-11-15 02:18:21 +0000
commitc3a8e3d64ebb37ab83b3cebb868cd68d4135f59d (patch)
tree5e36fffc344ba448f3c20b95f48f2bd06e7a15d9
parentf4904ff7af40c8683d0dd3550eaf979fa90a2e47 (diff)
downloadheat-c3a8e3d64ebb37ab83b3cebb868cd68d4135f59d.tar.gz
Allow deleting user_creds when can't be decrypted
There are situations when the auth_encryption_key changes and customer wants to delete old stacks. We should allow deleting those stacks. Task: #42055 Change-Id: Ifc8c19e181902566d4f295fa979ab6869a4e0852 (cherry picked from commit 520e2389d3123efc9269bbf82c6c9998b6c62564)
-rw-r--r--heat/engine/stack.py6
1 files changed, 4 insertions, 2 deletions
diff --git a/heat/engine/stack.py b/heat/engine/stack.py
index ec46e8ff4..c7ebec129 100644
--- a/heat/engine/stack.py
+++ b/heat/engine/stack.py
@@ -1889,11 +1889,13 @@ class Stack(collections.abc.Mapping):
def _try_get_user_creds(self):
# There are cases where the user_creds cannot be returned
# due to credentials truncated when being saved to DB.
- # Ignore this error instead of blocking stack deletion.
+ # Also, there are cases where auth_encryption_key has
+ # changed for some reason.
+ # Ignore these errors instead of blocking stack deletion.
try:
return ucreds_object.UserCreds.get_by_id(self.context,
self.user_creds_id)
- except exception.Error:
+ except (exception.Error, exception.InvalidEncryptionKey):
LOG.exception("Failed to retrieve user_creds")
return None