summaryrefslogtreecommitdiff
path: root/openstackclient
diff options
context:
space:
mode:
Diffstat (limited to 'openstackclient')
-rw-r--r--openstackclient/volume/v1/type.py24
1 files changed, 24 insertions, 0 deletions
diff --git a/openstackclient/volume/v1/type.py b/openstackclient/volume/v1/type.py
index 46d1828b..87bf9653 100644
--- a/openstackclient/volume/v1/type.py
+++ b/openstackclient/volume/v1/type.py
@@ -182,3 +182,27 @@ class UnsetVolumeType(command.Command):
else:
self.app.log.error("No changes requested\n")
return
+
+
+class ShowVolumeType(show.ShowOne):
+ """Display volume type details"""
+
+ log = logging.getLogger(__name__ + ".ShowVolumeType")
+
+ def get_parser(self, prog_name):
+ parser = super(ShowVolumeType, self).get_parser(prog_name)
+ parser.add_argument(
+ "volume_type",
+ metavar="<volume-type>",
+ help="Volume type to display (name or ID)"
+ )
+ return parser
+
+ def take_action(self, parsed_args):
+ self.log.debug("take_action: (%s)", parsed_args)
+ volume_client = self.app.client_manager.volume
+ volume_type = utils.find_resource(
+ volume_client.volume_types, parsed_args.volume_type)
+ properties = utils.format_dict(volume_type._info.pop('extra_specs'))
+ volume_type._info.update({'properties': properties})
+ return zip(*sorted(six.iteritems(volume_type._info)))