diff options
| author | Doug Hellmann <doug.hellmann@dreamhost.com> | 2012-05-02 17:02:08 -0400 |
|---|---|---|
| committer | Doug Hellmann <doug.hellmann@dreamhost.com> | 2012-05-04 09:35:40 -0400 |
| commit | 5e4032150d360a305397e0220e51c5a66f2f5313 (patch) | |
| tree | 77ca626617774880f4eda5fa3143f0c9add642e3 /openstackclient/compute/client.py | |
| parent | b5a809d8e39e856a4b5e60383f5f35065a48fd12 (diff) | |
| download | python-openstackclient-5e4032150d360a305397e0220e51c5a66f2f5313.tar.gz | |
Fix "help" command and implement "list server" and "show server"
blueprint client-manager
blueprint nova-client
bug 992841
Move the authentication logic into a new ClientManager class so that only commands that need to authenticate will trigger that code.
Implement "list server" and "show server" commands as examples of using the ClientManager, Lister, and ShowOne classes.
Change-Id: I9845b70b33bae4b193dbe41871bf0ca8e286a727
Diffstat (limited to 'openstackclient/compute/client.py')
| -rw-r--r-- | openstackclient/compute/client.py | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/openstackclient/compute/client.py b/openstackclient/compute/client.py new file mode 100644 index 00000000..ef0ceb38 --- /dev/null +++ b/openstackclient/compute/client.py @@ -0,0 +1,32 @@ +import logging + +from novaclient import client as nova_client + +LOG = logging.getLogger(__name__) + + +def make_client(instance): + """Returns a compute service client. + """ + LOG.debug('instantiating compute client') + # FIXME(dhellmann): Where is the endpoint value used? + # url = instance.get_endpoint_for_service_type('compute') + client = nova_client.Client( + version=instance._compute_api_version, + username=instance._username, + api_key=instance._password, + project_id=instance._tenant_name, + auth_url=instance._auth_url, + # FIXME(dhellmann): add constructor argument for this + insecure=False, + region_name=instance._region_name, + # FIXME(dhellmann): get endpoint_type from option? + endpoint_type='publicURL', + # FIXME(dhellmann): add extension discovery + extensions=[], + service_type='compute', + # FIXME(dhellmann): what is service_name? + service_name='', + ) + client.authenticate() + return client |
