Merge "Add logic to handle old and new sdk constructor"

This commit is contained in:
Zuul 2017-11-17 21:33:29 +00:00 committed by Gerrit Code Review
commit 45260c41de
1 changed files with 18 additions and 9 deletions

View File

@ -14,7 +14,10 @@
import logging
from openstack import connection
from openstack import profile
try:
from openstack import profile
except ImportError:
profile = None
from osc_lib import utils
from openstackclient.i18n import _
@ -33,14 +36,20 @@ API_VERSIONS = {
def make_client(instance):
"""Returns a network proxy"""
prof = profile.Profile()
prof.set_region(API_NAME, instance.region_name)
prof.set_version(API_NAME, instance._api_version[API_NAME])
prof.set_interface(API_NAME, instance.interface)
conn = connection.Connection(authenticator=instance.session.auth,
verify=instance.session.verify,
cert=instance.session.cert,
profile=prof)
if profile is None:
# New SDK
conn = connection.Connection(
cloud_config=instance._cli_options,
session=instance.session)
else:
prof = profile.Profile()
prof.set_region(API_NAME, instance.region_name)
prof.set_version(API_NAME, instance._api_version[API_NAME])
prof.set_interface(API_NAME, instance.interface)
conn = connection.Connection(authenticator=instance.session.auth,
verify=instance.session.verify,
cert=instance.session.cert,
profile=prof)
LOG.debug('Connection: %s', conn)
LOG.debug('Network client initialized using OpenStack SDK: %s',
conn.network)