summaryrefslogtreecommitdiff
path: root/openstackclient/shell.py
diff options
context:
space:
mode:
authorJenkins <jenkins@review.openstack.org>2013-03-27 15:04:10 +0000
committerGerrit Code Review <review@openstack.org>2013-03-27 15:04:10 +0000
commit512cccc78c6435ba5ea608e6cc67659e05105c62 (patch)
tree80fd71cc0908ef518f26d20225f1b2e5ed7b53f7 /openstackclient/shell.py
parent73fb88e9317f5f2e5270aca4976ffecd06621b0c (diff)
parent4fd5dd3b1afca700073affe313732c1d0540215e (diff)
downloadpython-openstackclient-512cccc78c6435ba5ea608e6cc67659e05105c62.tar.gz
Merge "Add a simple extension hook"
Diffstat (limited to 'openstackclient/shell.py')
-rw-r--r--openstackclient/shell.py14
1 files changed, 13 insertions, 1 deletions
diff --git a/openstackclient/shell.py b/openstackclient/shell.py
index b30e01e7..303771c6 100644
--- a/openstackclient/shell.py
+++ b/openstackclient/shell.py
@@ -305,7 +305,6 @@ class OpenStackShell(App):
requests_log.setLevel(logging.WARNING)
# stash selected API versions for later
- # TODO(dtroyer): how do extenstions add their version requirements?
self.api_version = {
'compute': self.options.os_compute_api_version,
'identity': self.options.os_identity_api_version,
@@ -319,6 +318,19 @@ class OpenStackShell(App):
self.command_manager.add_command_group(
'openstack.' + api + version)
+ # This is the naive extension implementation referred to in
+ # blueprint 'client-extensions'
+ # Extension modules can register their commands in an
+ # 'openstack.extension' entry point group:
+ # entry_points={
+ # 'openstack.extension': [
+ # 'list_repo=qaz.github.repo:ListRepo',
+ # 'show_repo=qaz.github.repo:ShowRepo',
+ # ],
+ # }
+ self.command_manager.add_command_group(
+ 'openstack.extension')
+
# Handle deferred help and exit
if self.options.deferred_help:
self.DeferredHelpAction(self.parser, self.parser, None, None)