summaryrefslogtreecommitdiff
path: root/openstackclient/common
diff options
context:
space:
mode:
authorJenkins <jenkins@review.openstack.org>2017-03-23 20:30:15 +0000
committerGerrit Code Review <review@openstack.org>2017-03-23 20:30:15 +0000
commit2a64a6404681e0cea5896a02573a8be03dd1a7d3 (patch)
tree0fc6c831e3eb4bc212f9ff2741127120b417df9a /openstackclient/common
parent5da7ddd703a8fc2b96af8cb1eadbf259d67f50be (diff)
parent832b2591cf299bf51c1922df1cdd4ba0aabe88c0 (diff)
downloadpython-openstackclient-2a64a6404681e0cea5896a02573a8be03dd1a7d3.tar.gz
Merge "OSC Extension Show"
Diffstat (limited to 'openstackclient/common')
-rw-r--r--openstackclient/common/extension.py29
1 files changed, 29 insertions, 0 deletions
diff --git a/openstackclient/common/extension.py b/openstackclient/common/extension.py
index 991f3afc..d5b72238 100644
--- a/openstackclient/common/extension.py
+++ b/openstackclient/common/extension.py
@@ -134,3 +134,32 @@ class ListExtension(command.Lister):
LOG.warning(message)
return (columns, extension_tuples)
+
+
+class ShowExtension(command.ShowOne):
+ _description = _("Show API extension")
+
+ def get_parser(self, prog_name):
+ parser = super(ShowExtension, self).get_parser(prog_name)
+ parser.add_argument(
+ 'extension',
+ metavar='<extension>',
+ help=_('Extension to display. '
+ 'Currently, only network extensions are supported. '
+ '(Name or Alias)'),
+ )
+ return parser
+
+ def take_action(self, parsed_args):
+ client = self.app.client_manager.network
+ columns = ('Alias', 'Description', 'Links', 'Name',
+ 'Namespace', 'Updated')
+ ext = str(parsed_args.extension)
+ obj = client.find_extension(ext)
+ dict_tuples = (utils.get_item_properties(
+ obj,
+ columns,
+ formatters={},)
+ )
+
+ return columns, dict_tuples