[libvirt] [PATCH] virsh: More friendly err if no pool is specified for looking up a vol

Osier Yang jyang at redhat.com
Wed Sep 21 07:12:39 UTC 2011


There are 3 ways to lookup a volume, only virStorageVolLookupByName
needs pool object. So if no --pool is specified, it will tries to
get the volume via virStorageVolLookupByPath/virStorageVolLookupByKey.

But if all 3 ways fails, and no --pool is specified, a friendly
error might help the user get right way quickly.
---
 tools/virsh.c |    9 +++++++--
 1 files changed, 7 insertions(+), 2 deletions(-)

diff --git a/tools/virsh.c b/tools/virsh.c
index 371346a..4b9e662 100644
--- a/tools/virsh.c
+++ b/tools/virsh.c
@@ -14714,8 +14714,13 @@ vshCommandOptVolBy(vshControl *ctl, const vshCmd *cmd,
         vol = virStorageVolLookupByPath(ctl->conn, n);
     }
 
-    if (!vol)
-        vshError(ctl, _("failed to get vol '%s'"), n);
+    if (!vol) {
+        if (pool)
+            vshError(ctl, _("failed to get vol '%s'"), n);
+        else
+            vshError(ctl, _("failed to get vol '%s', specifying --pool "
+                            "might help"), n);
+    }
 
     if (pool)
         virStoragePoolFree(pool);
-- 
1.7.6




More information about the libvir-list mailing list