From 4c91e7c56e4379fad09d35aa2f0e09c3f3819622 Mon Sep 17 00:00:00 2001 From: Josh Kearney <josh@jk0.org> Date: Thu, 24 Jan 2013 11:39:18 -0600 Subject: [PATCH] Use the cliff framework's ShowOne as intended for `show image`. Also reformat code to follow newer PEP8 version. Full cleanup and PEP8 version bump coming in later patch. Change-Id: Ida3dd9a89660b9c4a91449846dd2d6e223ef187a --- openstackclient/image/v2/image.py | 35 ++++++++++++++----------------- 1 file changed, 16 insertions(+), 19 deletions(-) diff --git a/openstackclient/image/v2/image.py b/openstackclient/image/v2/image.py index 41520612d6..a9f5b46adc 100644 --- a/openstackclient/image/v2/image.py +++ b/openstackclient/image/v2/image.py @@ -19,6 +19,7 @@ import logging from cliff import command from cliff import lister +from cliff import show from glanceclient.common import utils as gc_utils from openstackclient.common import utils @@ -35,12 +36,12 @@ class ListImage(lister.Lister): parser.add_argument( "--page-size", metavar="<size>", - help="Number of images to request in each paginated request.", - ) + help="Number of images to request in each paginated request.") return parser def take_action(self, parsed_args): self.log.debug("take_action(%s)" % parsed_args) + image_client = self.app.client_manager.image kwargs = {} @@ -50,11 +51,7 @@ class ListImage(lister.Lister): data = image_client.images.list(**kwargs) columns = ["ID", "Name"] - return (columns, - (utils.get_item_properties( - s, columns, - ) for s in data), - ) + return (columns, (utils.get_item_properties(s, columns) for s in data)) class SaveImage(command.Command): @@ -68,26 +65,25 @@ class SaveImage(command.Command): parser.add_argument( "--file", metavar="<file>", - help="Local file to save downloaded image data to. " - "If this is not specified the image data will be " - "written to stdout.", - ) + help="Local file to save downloaded image data " + "to. If this is not specified the image " + "data will be written to stdout.") parser.add_argument( "id", metavar="<image_id>", - help="ID of image to describe.", - ) + help="ID of image to describe.") return parser def take_action(self, parsed_args): self.log.debug("take_action(%s)" % parsed_args) - image_client = self.app.client_manager.image + image_client = self.app.client_manager.image data = image_client.images.data(parsed_args.id) + gc_utils.save_image(data, parsed_args.file) -class ShowImage(command.Command): +class ShowImage(show.ShowOne): """Show image command""" api = "image" @@ -98,12 +94,13 @@ class ShowImage(command.Command): parser.add_argument( "id", metavar="<image_id>", - help="ID of image to describe.", - ) + help="ID of image to describe.") return parser def take_action(self, parsed_args): self.log.debug("take_action(%s)" % parsed_args) - image_client = self.app.client_manager.image - gc_utils.print_dict(image_client.images.get(parsed_args.id)) + image_client = self.app.client_manager.image + data = image_client.images.get(parsed_args.id) + + return zip(*sorted(data.iteritems()))