From b53874cb7a1a9fb26c821f72facba59229096368 Mon Sep 17 00:00:00 2001 From: Iustin Pop <iustin@google.com> Date: Fri, 27 Apr 2012 12:04:59 +0200 Subject: [PATCH] Fix grow-disk handling of invalid units MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The reason why grow-disk was doing: $ gnt-instance grow-disk instance3 0 -64 Unhandled Ganeti error: Invalid format Is because it does it's own ParseUnit call, and doesn't transform that into a nicer message. Signed-off-by: Iustin Pop <iustin@google.com> Reviewed-by: RenΓ© Nussbaumer <rn@google.com> (cherry picked from commit c8bde61ea8360da67fc09339f1fe29ddd0acc374) Signed-off-by: Iustin Pop <iustin@google.com> Reviewed-by: Michael Hanselmann <hansmi@google.com> --- lib/client/gnt_instance.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/lib/client/gnt_instance.py b/lib/client/gnt_instance.py index 3d6d68533..457a7c804 100644 --- a/lib/client/gnt_instance.py +++ b/lib/client/gnt_instance.py @@ -640,7 +640,11 @@ def GrowDisk(opts, args): except (TypeError, ValueError), err: raise errors.OpPrereqError("Invalid disk index: %s" % str(err), errors.ECODE_INVAL) - amount = utils.ParseUnit(args[2]) + try: + amount = utils.ParseUnit(args[2]) + except errors.UnitParseError: + raise errors.OpPrereqError("Can't parse the given amount '%s'" % args[2], + errors.ECODE_INVAL) op = opcodes.OpInstanceGrowDisk(instance_name=instance, disk=disk, amount=amount, wait_for_sync=opts.wait_for_sync) -- GitLab