def make_client(instance): """Returns a compute service client.""" # Defer client imports until we actually need them from novaclient import client as nova_client from novaclient import extension try: from novaclient.v2.contrib import list_extensions except ImportError: from novaclient.v1_1.contrib import list_extensions compute_client = nova_client.get_client_class( instance._api_version[API_NAME], ) LOG.debug('Instantiating compute client: %s', compute_client) # Set client http_log_debug to True if verbosity level is high enough http_log_debug = utils.get_effective_log_level() <= logging.DEBUG extensions = [extension.Extension('list_extensions', list_extensions)] # Remember endpoint_type only if it is set kwargs = utils.build_kwargs_dict('endpoint_type', instance._endpoint_type) client = compute_client(session=instance.session, extensions=extensions, http_log_debug=http_log_debug, timings=instance.timing, region_name=instance._region_name, **kwargs) return client
def make_client(instance): """Returns a volume service client.""" # Defer client imports until we actually need them from cinderclient import extension from cinderclient.v1.contrib import list_extensions from cinderclient.v1 import volume_snapshots from cinderclient.v1 import volumes # Monkey patch for v1 cinderclient volumes.Volume.NAME_ATTR = 'display_name' volume_snapshots.Snapshot.NAME_ATTR = 'display_name' volume_client = utils.get_client_class(API_NAME, instance._api_version[API_NAME], API_VERSIONS) LOG.debug('Instantiating volume client: %s', volume_client) # Set client http_log_debug to True if verbosity level is high enough http_log_debug = utils.get_effective_log_level() <= logging.DEBUG extensions = [extension.Extension('list_extensions', list_extensions)] # Remember interface only if it is set kwargs = utils.build_kwargs_dict('endpoint_type', instance._interface) client = volume_client(session=instance.session, extensions=extensions, http_log_debug=http_log_debug, region_name=instance._region_name, **kwargs) return client
def make_client(instance): cls = oscutils.get_client_class( API_NAME, instance._api_version[API_NAME], API_VERSIONS) kwargs = oscutils.build_kwargs_dict('endpoint_type', instance._interface) return cls(session=instance.session, region_name=instance._region_name, **kwargs)
def make_client(instance): """Returns a compute service client.""" # Defer client import until we actually need them from novaclient import client as nova_client if _compute_api_version is not None: version = _compute_api_version else: version = instance._api_version[API_NAME] LOG.debug('Instantiating compute client for V%s', version) # Set client http_log_debug to True if verbosity level is high enough http_log_debug = utils.get_effective_log_level() <= logging.DEBUG extensions = [ext for ext in nova_client.discover_extensions(version) if ext.name == "list_extensions"] # Remember interface only if it is set kwargs = utils.build_kwargs_dict('endpoint_type', instance._interface) client = nova_client.Client( version, session=instance.session, extensions=extensions, http_log_debug=http_log_debug, timings=instance.timing, region_name=instance._region_name, **kwargs ) return client
def make_client(instance): """Returns a compute service client.""" # Defer client import until we actually need them from novaclient import client as nova_client if _compute_api_version is not None: version = _compute_api_version else: version = instance._api_version[API_NAME] LOG.debug('Instantiating compute client for V%s', version) # Set client http_log_debug to True if verbosity level is high enough http_log_debug = utils.get_effective_log_level() <= logging.DEBUG extensions = [ ext for ext in nova_client.discover_extensions(version) if ext.name == "list_extensions" ] # Remember interface only if it is set kwargs = utils.build_kwargs_dict('endpoint_type', instance._interface) client = nova_client.Client(version, session=instance.session, extensions=extensions, http_log_debug=http_log_debug, timings=instance.timing, region_name=instance._region_name, **kwargs) return client
def make_client(instance): """Returns a compute service client.""" # Defer client imports until we actually need them from novaclient import client as nova_client from novaclient import extension try: from novaclient.v2.contrib import list_extensions except ImportError: from novaclient.v1_1.contrib import list_extensions compute_client = nova_client.get_client_class( instance._api_version[API_NAME], ) LOG.debug('Instantiating compute client: %s', compute_client) # Set client http_log_debug to True if verbosity level is high enough http_log_debug = utils.get_effective_log_level() <= logging.DEBUG extensions = [extension.Extension('list_extensions', list_extensions)] # Remember interface only if it is set kwargs = utils.build_kwargs_dict('endpoint_type', instance._interface) client = compute_client( session=instance.session, extensions=extensions, http_log_debug=http_log_debug, timings=instance.timing, region_name=instance._region_name, **kwargs ) return client
def make_client(instance): """Returns an network service client""" network_client = utils.get_client_class(API_NAME, instance._api_version[API_NAME], API_VERSIONS) LOG.debug('Instantiating network client: %s', network_client) endpoint = instance.get_endpoint_for_service_type( API_NAME, region_name=instance._region_name, endpoint_type=instance._endpoint_type, ) # Remember endpoint_type only if it is set kwargs = utils.build_kwargs_dict('endpoint_type', instance._endpoint_type) client = network_client(session=instance.session, region_name=instance._region_name, **kwargs) network_api = utils.get_client_class(API_NAME, instance._api_version[API_NAME], NETWORK_API_VERSIONS) LOG.debug('Instantiating network api: %s', network_client) # v2 is hard-coded until discovery is completed, neutron only has one atm client.api = network_api( session=instance.session, service_type=NETWORK_API_TYPE, endpoint='/'.join([ endpoint, API_VERSION_MAP[instance._api_version[API_NAME]], ])) return client
def make_client(instance): cls = oscutils.get_client_class(API_NAME, instance._api_version[API_NAME], API_VERSIONS) kwargs = oscutils.build_kwargs_dict('endpoint_type', instance._interface) return cls(session=instance.session, region_name=instance._region_name, **kwargs)
def make_client(instance): """Returns an identity service client.""" identity_client = utils.get_client_class(API_NAME, instance._api_version[API_NAME], API_VERSIONS) LOG.debug('Instantiating identity client: %s', identity_client) # Remember interface only if endpoint_type is set kwargs = utils.build_kwargs_dict('interface', instance._endpoint_type) client = identity_client(session=instance.session, region_name=instance._region_name, **kwargs) return client
def make_client(instance): data_processing_client = utils.get_client_class( API_NAME, instance._api_version[API_NAME], API_VERSIONS) LOG.debug('Instantiating data-processing client: %s', data_processing_client) kwargs = utils.build_kwargs_dict('endpoint_type', instance._interface) client = data_processing_client( session=instance.session, region_name=instance._region_name, cacert=instance._cacert, insecure=instance._insecure, sahara_url=instance._cli_options.data_processing_url, **kwargs) return client
def make_client(instance): """Returns an identity service client.""" identity_client = utils.get_client_class( API_NAME, instance._api_version[API_NAME], API_VERSIONS) LOG.debug('Instantiating identity client: %s', identity_client) # Remember interface only if interface is set kwargs = utils.build_kwargs_dict('interface', instance._interface) client = identity_client( session=instance.session, region_name=instance._region_name, **kwargs ) return client
def make_client(instance): """Returns a compute service client.""" # Defer client import until we actually need them from novaclient import client as nova_client if _compute_api_version is not None: version = _compute_api_version else: version = instance._api_version[API_NAME] from novaclient import api_versions # convert to APIVersion object version = api_versions.get_api_version(version) if version.is_latest(): import novaclient # NOTE(RuiChen): executing version discovery make sense, but that need # an initialized REST client, it's not available now, # fallback to use the max version of novaclient side. version = novaclient.API_MAX_VERSION LOG.debug('Instantiating compute client for %s', version) # Set client http_log_debug to True if verbosity level is high enough http_log_debug = utils.get_effective_log_level() <= logging.DEBUG extensions = [ext for ext in nova_client.discover_extensions(version) if ext.name == "list_extensions"] # Remember interface only if it is set kwargs = utils.build_kwargs_dict('endpoint_type', instance._interface) client = nova_client.Client( version, session=instance.session, extensions=extensions, http_log_debug=http_log_debug, timings=instance.timing, region_name=instance._region_name, **kwargs ) return client
def make_client(instance): data_processing_client = utils.get_client_class( API_NAME, instance._api_version[API_NAME], API_VERSIONS) LOG.debug('Instantiating data-processing client: %s', data_processing_client) kwargs = utils.build_kwargs_dict('endpoint_type', instance._interface) client = data_processing_client( session=instance.session, region_name=instance._region_name, cacert=instance._cacert, insecure=instance._insecure, sahara_url=instance._cli_options.data_processing_url, **kwargs ) return client
def make_client(instance): """Returns a compute service client.""" # Defer client import until we actually need them from novaclient import client as nova_client if _compute_api_version is not None: version = _compute_api_version else: version = instance._api_version[API_NAME] from novaclient import api_versions # convert to APIVersion object version = api_versions.get_api_version(version) if version.is_latest(): import novaclient # NOTE(RuiChen): executing version discovery make sense, but that need # an initialized REST client, it's not available now, # fallback to use the max version of novaclient side. version = novaclient.API_MAX_VERSION LOG.debug('Instantiating compute client for %s', version) # Set client http_log_debug to True if verbosity level is high enough http_log_debug = utils.get_effective_log_level() <= logging.DEBUG extensions = [ ext for ext in nova_client.discover_extensions(version) if ext.name == "list_extensions" ] # Remember interface only if it is set kwargs = utils.build_kwargs_dict('endpoint_type', instance._interface) client = nova_client.Client(version, session=instance.session, extensions=extensions, http_log_debug=http_log_debug, timings=instance.timing, region_name=instance._region_name, **kwargs) return client
def make_client(instance): """Returns a search service client""" search_client = utils.get_client_class( API_NAME, instance._api_version[API_NAME], API_VERSIONS) # Set client http_log_debug to True if verbosity level is high enough http_log_debug = utils.get_effective_log_level() <= logging.DEBUG # Remember interface only if it is set kwargs = utils.build_kwargs_dict('endpoint_type', instance._interface) client = search_client( session=instance.session, http_log_debug=http_log_debug, region_name=instance._region_name, **kwargs ) return client
def make_client(instance): """Returns an network service client""" network_client = utils.get_client_class( API_NAME, instance._api_version[API_NAME], API_VERSIONS) LOG.debug('Instantiating network client: %s', network_client) endpoint = instance.get_endpoint_for_service_type( API_NAME, region_name=instance._region_name, endpoint_type=instance._endpoint_type, ) # Remember endpoint_type only if it is set kwargs = utils.build_kwargs_dict('endpoint_type', instance._endpoint_type) client = network_client( session=instance.session, region_name=instance._region_name, **kwargs ) network_api = utils.get_client_class( API_NAME, instance._api_version[API_NAME], NETWORK_API_VERSIONS) LOG.debug('Instantiating network api: %s', network_client) # v2 is hard-coded until discovery is completed, neutron only has one atm client.api = network_api( session=instance.session, service_type=NETWORK_API_TYPE, endpoint='/'.join([ endpoint, API_VERSION_MAP[instance._api_version[API_NAME]], ]) ) return client
def make_client(instance): """Returns a volume service client.""" # Defer client imports until we actually need them from cinderclient import extension from cinderclient.v1.contrib import list_extensions from cinderclient.v1 import volume_snapshots from cinderclient.v1 import volumes # Monkey patch for v1 cinderclient volumes.Volume.NAME_ATTR = 'display_name' volume_snapshots.Snapshot.NAME_ATTR = 'display_name' volume_client = utils.get_client_class( API_NAME, instance._api_version[API_NAME], API_VERSIONS ) LOG.debug('Instantiating volume client: %s', volume_client) # Set client http_log_debug to True if verbosity level is high enough http_log_debug = utils.get_effective_log_level() <= logging.DEBUG extensions = [extension.Extension('list_extensions', list_extensions)] # Remember interface only if it is set kwargs = utils.build_kwargs_dict('endpoint_type', instance._interface) client = volume_client( session=instance.session, extensions=extensions, http_log_debug=http_log_debug, region_name=instance._region_name, **kwargs ) return client
def test_build_kwargs_dict_value_empty_str(self): self.assertEqual({}, utils.build_kwargs_dict("arg_bla", ""))
def test_build_kwargs_dict_value_None(self): self.assertEqual({}, utils.build_kwargs_dict("arg_bla", None))
def test_build_kwargs_dict_value_set(self): self.assertEqual({"arg_bla": "bla"}, utils.build_kwargs_dict("arg_bla", "bla"))
def test_build_kwargs_dict_value_set(self): self.assertEqual({'arg_bla': 'bla'}, utils.build_kwargs_dict('arg_bla', 'bla'))
def test_build_kwargs_dict_value_None(self): self.assertEqual({}, utils.build_kwargs_dict('arg_bla', None))
def test_build_kwargs_dict_value_empty_str(self): self.assertEqual({}, utils.build_kwargs_dict('arg_bla', ''))