diff options
author | whoami-rajat <rajatdhasmana@gmail.com> | 2022-04-19 00:03:18 +0530 |
---|---|---|
committer | whoami-rajat <rajatdhasmana@gmail.com> | 2022-04-28 10:31:54 +0530 |
commit | 3ee399a1e35fbf9067f0548b69bc19ca48b8de5f (patch) | |
tree | c188d0107f1b86f128cc32fb5ace441e508089cb | |
parent | 77919e15d281e908de7b687e2af927b59d3dc8a8 (diff) | |
download | glance_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
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. |