def create_manager(core_identity): all_creds = core_identity.get_all_credentials() project_name = core_identity.project_name() domain_name = all_creds.get('domain_name', 'default') auth_url = all_creds.get('auth_url','') if '/v' not in auth_url: # Add /v3 if no version specified in auth_url auth_url += '/v3' if '/v2' in auth_url: # Remove this when "Legacy cloud" support is removed username = all_creds['key'] password = all_creds['secret'] auth_url = all_creds.pop('auth_url').replace("/tokens","") network_driver = NetworkManager( auth_url=auth_url, username=username, password=password, tenant_name=project_name, **all_creds) return network_driver elif 'ex_force_auth_token' in all_creds: auth_token = all_creds['ex_force_auth_token'] (auth, sess, token) = _token_to_keystone_scoped_project( auth_url, auth_token, project_name, domain_name) else: username = all_creds.get('key','') password = all_creds.get('secret','') (auth, sess, token) = _connect_to_keystone_v3( auth_url, username, password, project_name, domain_name=domain_name) network_driver = NetworkManager(session=sess) return network_driver
def create_manager(core_identity): all_creds = core_identity.get_all_credentials() project_name = core_identity.project_name() domain_name = all_creds.get('domain_name', 'default') auth_url = all_creds.get('auth_url','') if '/v' not in auth_url: # Add /v3 if no version specified in auth_url auth_url += '/v3' if '/v2' in auth_url: # Remove this when "Legacy cloud" support is removed username = all_creds['key'] password = all_creds['secret'] auth_url = all_creds.pop('auth_url').replace("/tokens","") network_driver = NetworkManager( auth_url=auth_url, username=username, password=password, tenant_name=project_name, **all_creds) return network_driver elif 'ex_force_auth_token' in all_creds: auth_token = all_creds['ex_force_auth_token'] (auth, sess, token) = _token_to_keystone_scoped_project( auth_url, auth_token, project_name, domain_name) else: username = all_creds.get('key','') password = all_creds.get('secret','') (auth, sess, token) = _connect_to_keystone_v3( auth_url, username, password, project_name, domain_name=domain_name) network_driver = NetworkManager(session=sess) return network_driver
def new_connection(self, *args, **kwargs): if kwargs.get('version') == 'v3': (auth, session, token) = _connect_to_keystone_v3(**kwargs) keystone = _connect_to_keystone(version="v3", auth=auth, session=session) nova = _connect_to_nova_by_auth(auth=auth, session=session) else: #Legacy cloud method for connection (without keystoneauth1) keystone = _connect_to_keystone(*args, **kwargs) nova_args = kwargs.copy() nova_args['version'] = 'v2.0' nova_args['auth_url'] = nova_args['auth_url'].replace('v3', 'v2.0') nova = _connect_to_nova(*args, **nova_args) swift_args = self._get_swift_args(*args, **kwargs) swift = _connect_to_swift(*args, **swift_args) return keystone, nova, swift
def new_connection(self, *args, **kwargs): """ Allows us to make another connection (As the user) """ #NOTE: This is a HACK that should be removed when we stop supporting "Legacy Openstack" if 'auth_url' in kwargs and '/v2' in kwargs['auth_url']: return _connect_to_neutron(*args, **kwargs) if 'session' not in kwargs: if 'project_name' not in kwargs and 'tenant_name' in kwargs: kwargs['project_name'] = kwargs['tenant_name'] (auth, session, token) = _connect_to_keystone_v3(**kwargs) neutron = _connect_to_neutron(session=session) else: neutron = _connect_to_neutron(*args, **kwargs) return neutron
def new_connection(self, *args, **kwargs): if kwargs.get('version') == 'v3': if 'auth_token' in kwargs: (auth, session, token) = _connect_to_keystone_auth_v3(**kwargs) else: (auth, session, token) = _connect_to_keystone_v3(**kwargs) keystone = _connect_to_keystone(version="v3", auth=auth, session=session) glance = _connect_to_glance_by_auth(auth=auth, session=session) nova = _connect_to_nova_by_auth(auth=auth, session=session) swift = _connect_to_swift(session=session) else: #Legacy cloud method for connection (without keystoneauth1) keystone = _connect_to_keystone(*args, **kwargs) glance = _connect_to_glance(keystone, **kwargs) nova_args = kwargs.copy() nova_args['version'] = 'v2.0' nova_args['auth_url'] = nova_args['auth_url'].replace('v3','v2.0') nova = _connect_to_nova(*args, **nova_args) swift_args = self._get_swift_args(*args, **kwargs) swift = _connect_to_swift(*args, **swift_args) return keystone, nova, swift, glance
def _new_connection(self, *args, **kwargs): """ Can be used to establish a new connection for all clients """ version = kwargs.get('version') if version == 'v3': (auth, sess, token) = _connect_to_keystone_v3(**kwargs) keystone = _connect_to_keystone(auth=auth, session=sess, version=version) nova = _connect_to_nova_by_auth(auth=auth, session=sess) glance = _connect_to_glance_by_auth(auth=auth, session=sess) glance_v1 = glance else: ks_kwargs = self._build_keystone_creds(kwargs) nova_kwargs = self._build_nova_creds(kwargs) keystone = _connect_to_keystone(*args, **ks_kwargs) nova = _connect_to_nova(*args, **nova_kwargs) glance = _connect_to_glance(keystone, *args, **kwargs) kwargs.pop('version', None) kwargs['version'] = 1 glance_v1 = _connect_to_glance(keystone, *args, **kwargs) return (keystone, nova, glance, glance_v1)
def new_connection(self, *args, **kwargs): """ Allows us to make another connection (As the user) """ #NOTE: This is a HACK that should be removed when we stop supporting "Legacy Openstack" if 'auth_url' in kwargs and '/v2' in kwargs['auth_url']: neutron = _connect_to_neutron(*args, **kwargs) sahara = None heat = None elif 'session' not in kwargs: if 'project_name' not in kwargs and 'tenant_name' in kwargs: kwargs['project_name'] = kwargs['tenant_name'] (auth, session, token) = _connect_to_keystone_v3(**kwargs) neutron = _connect_to_neutron(session=session) sahara = _connect_to_sahara(session=session) heat = _connect_to_heat(session=session) else: neutron = _connect_to_neutron(*args, **kwargs) sahara = _connect_to_sahara(*args, **kwargs) heat = _connect_to_heat(*args, **kwargs) return neutron, sahara, heat
def _new_connection(self, *args, **kwargs): """ Can be used to establish a new connection for all clients """ version = kwargs.get('version') if version == 'v3': (auth, sess, token) = _connect_to_keystone_v3(**kwargs) keystone = _connect_to_keystone(auth=auth, session=sess, version=version) nova = _connect_to_nova_by_auth(auth=auth, session=sess) glance = _connect_to_glance_by_auth(auth=auth, session=sess) glance_v1 = glance else: ks_kwargs = self._build_keystone_creds(kwargs) nova_kwargs = self._build_nova_creds(kwargs) keystone = _connect_to_keystone(*args, **ks_kwargs) nova = _connect_to_nova(*args, **nova_kwargs) glance = _connect_to_glance(keystone, *args, **kwargs) kwargs.pop('version', None) kwargs['version'] = 1 glance_v1 = _connect_to_glance(keystone, *args, **kwargs) return (keystone, nova, glance, glance_v1)