diff --git a/openstackclient/network/client.py b/openstackclient/network/client.py index 9525b947d0..3566bfe525 100644 --- a/openstackclient/network/client.py +++ b/openstackclient/network/client.py @@ -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)