From 2b051f7fa2af6fc5c62440b762c26664fcfed687 Mon Sep 17 00:00:00 2001 From: felix23ma Date: Tue, 24 Nov 2015 22:08:11 +0800 Subject: [PATCH] Raise exception in find_multipath_device When failed to execute "multipath -l" in find_multipath_device, raise an exception instead of printing warning only. Change-Id: I593b49d1637c7077e51a2db343e5b1eec3053536 Closes-Bug: #1519363 --- os_brick/exception.py | 4 ++++ os_brick/initiator/linuxscsi.py | 3 ++- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/os_brick/exception.py b/os_brick/exception.py index 39d1c06ac..fcf708748 100644 --- a/os_brick/exception.py +++ b/os_brick/exception.py @@ -128,3 +128,7 @@ class VolumeGroupNotFound(BrickException): class VolumeGroupCreationFailed(BrickException): message = _("Failed to create Volume Group: %(vg_name)s") + + +class CommandExecutionFailed(BrickException): + message = _("Failed to execute command %(cmd)s") diff --git a/os_brick/initiator/linuxscsi.py b/os_brick/initiator/linuxscsi.py index d64db9d03..ed1035528 100644 --- a/os_brick/initiator/linuxscsi.py +++ b/os_brick/initiator/linuxscsi.py @@ -266,7 +266,8 @@ class LinuxSCSI(executor.Executor): except putils.ProcessExecutionError as exc: LOG.warning(_LW("multipath call failed exit %(code)s"), {'code': exc.exit_code}) - return None + raise exception.CommandExecutionFailed( + cmd='multipath -l %s' % device) if out: lines = out.strip()