summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorwhoami-rajat <rajatdhasmana@gmail.com>2022-04-19 00:03:18 +0530
committerwhoami-rajat <rajatdhasmana@gmail.com>2022-04-28 10:31:54 +0530
commit3ee399a1e35fbf9067f0548b69bc19ca48b8de5f (patch)
treec188d0107f1b86f128cc32fb5ace441e508089cb
parent77919e15d281e908de7b687e2af927b59d3dc8a8 (diff)
downloadglance_store-3ee399a1e35fbf9067f0548b69bc19ca48b8de5f.tar.gz
Cinder: Correct exception logging during attach
There is a syntax error in the exception logging when attaching a volume fails in attachment state manager. This patch corrects it and adds a test to guard against similar changes in future. Closes-Bug: #1970698 Change-Id: I43c407046a49bb37631113e2ea65d05450f9365d
-rw-r--r--glance_store/common/attachment_state_manager.py4
-rw-r--r--glance_store/tests/unit/common/test_attachment_state_manager.py9
-rw-r--r--releasenotes/notes/fix-exception-logging-during-attach-9546e24189db83c4.yaml6
3 files changed, 17 insertions, 2 deletions
diff --git a/glance_store/common/attachment_state_manager.py b/glance_store/common/attachment_state_manager.py
index b069730..984fcb8 100644
--- a/glance_store/common/attachment_state_manager.py
+++ b/glance_store/common/attachment_state_manager.py
@@ -190,8 +190,8 @@ class _AttachmentState(object):
attachment = self.volume_api.attachment_create(
client, volume_id, mode=mode)
except Exception:
- LOG.exception(_LE('Error attaching volume %(volume_id)s',
- {'volume_id': volume_id}))
+ LOG.exception(_LE('Error attaching volume %(volume_id)s'),
+ {'volume_id': volume_id})
del self.volumes[volume_id]
raise
diff --git a/glance_store/tests/unit/common/test_attachment_state_manager.py b/glance_store/tests/unit/common/test_attachment_state_manager.py
index f019c9b..d8c5189 100644
--- a/glance_store/tests/unit/common/test_attachment_state_manager.py
+++ b/glance_store/tests/unit/common/test_attachment_state_manager.py
@@ -18,6 +18,7 @@ from unittest import mock
from oslo_config import cfg
from oslotest import base
+from cinderclient import exceptions as cinder_exception
from glance_store.common import attachment_state_manager as attach_manager
from glance_store.common import cinder_utils
from glance_store import exceptions
@@ -106,3 +107,11 @@ class AttachmentStateTestCase(base.BaseTestCase):
*self.disconnect_vol_call)
mock_attach_delete.assert_called_once_with(
*self.detach_call)
+
+ @mock.patch.object(cinder_utils.API, 'attachment_create')
+ def test_attach_fails(self, mock_attach_create):
+ mock_attach_create.side_effect = cinder_exception.BadRequest(code=400)
+ self.assertRaises(
+ cinder_exception.BadRequest, self.m.attach,
+ mock.sentinel.client, mock.sentinel.volume_id,
+ mock.sentinel.host, mode=mock.sentinel.mode)
diff --git a/releasenotes/notes/fix-exception-logging-during-attach-9546e24189db83c4.yaml b/releasenotes/notes/fix-exception-logging-during-attach-9546e24189db83c4.yaml
new file mode 100644
index 0000000..36abe20
--- /dev/null
+++ b/releasenotes/notes/fix-exception-logging-during-attach-9546e24189db83c4.yaml
@@ -0,0 +1,6 @@
+---
+fixes:
+ - |
+ `Bug #1970698 <https://bugs.launchpad.net/glance-store/+bug/1970698>`_:
+ Cinder: Fixed exception logging when the image create operation fails
+ due to failing to attach volume to glance host.