summaryrefslogtreecommitdiff
path: root/openstackclient/image/client.py
diff options
context:
space:
mode:
Diffstat (limited to 'openstackclient/image/client.py')
-rw-r--r--openstackclient/image/client.py76
1 files changed, 42 insertions, 34 deletions
diff --git a/openstackclient/image/client.py b/openstackclient/image/client.py
index b67c291f..15bea17e 100644
--- a/openstackclient/image/client.py
+++ b/openstackclient/image/client.py
@@ -27,7 +27,7 @@ API_VERSION_OPTION = 'os_image_api_version'
API_NAME = "image"
API_VERSIONS = {
"1": "glanceclient.v1.client.Client",
- "2": "glanceclient.v2.client.Client",
+ "2": "openstack.connection.Connection",
}
IMAGE_API_TYPE = 'image'
@@ -38,44 +38,52 @@ IMAGE_API_VERSIONS = {
def make_client(instance):
- """Returns an image service client"""
- image_client = utils.get_client_class(
- API_NAME,
- instance._api_version[API_NAME],
- API_VERSIONS)
- LOG.debug('Instantiating image client: %s', image_client)
-
- endpoint = instance.get_endpoint_for_service_type(
- API_NAME,
- region_name=instance.region_name,
- interface=instance.interface,
- )
-
- client = image_client(
- endpoint,
- token=instance.auth.get_token(instance.session),
- cacert=instance.cacert,
- insecure=not instance.verify,
- )
- # Create the low-level API
-
- image_api = utils.get_client_class(
- API_NAME,
- instance._api_version[API_NAME],
- IMAGE_API_VERSIONS)
- LOG.debug('Instantiating image api: %s', image_api)
-
- client.api = image_api(
- session=instance.session,
- endpoint=instance.get_endpoint_for_service_type(
- IMAGE_API_TYPE,
+ if instance._api_version[API_NAME] != '1':
+ LOG.debug(
+ 'Image client initialized using OpenStack SDK: %s',
+ instance.sdk_connection.image,
+ )
+ return instance.sdk_connection.image
+ else:
+ """Returns an image service client"""
+ image_client = utils.get_client_class(
+ API_NAME,
+ instance._api_version[API_NAME],
+ API_VERSIONS)
+ LOG.debug('Instantiating image client: %s', image_client)
+
+ endpoint = instance.get_endpoint_for_service_type(
+ API_NAME,
region_name=instance.region_name,
interface=instance.interface,
)
- )
- return client
+ client = image_client(
+ endpoint,
+ token=instance.auth.get_token(instance.session),
+ cacert=instance.cacert,
+ insecure=not instance.verify,
+ )
+
+ # Create the low-level API
+
+ image_api = utils.get_client_class(
+ API_NAME,
+ instance._api_version[API_NAME],
+ IMAGE_API_VERSIONS)
+ LOG.debug('Instantiating image api: %s', image_api)
+
+ client.api = image_api(
+ session=instance.session,
+ endpoint=instance.get_endpoint_for_service_type(
+ IMAGE_API_TYPE,
+ region_name=instance.region_name,
+ interface=instance.interface,
+ )
+ )
+
+ return client
def build_option_parser(parser):