本文整理汇总了Python中keystoneauth1.loading.load_session_from_conf_options方法的典型用法代码示例。如果您正苦于以下问题:Python loading.load_session_from_conf_options方法的具体用法?Python loading.load_session_from_conf_options怎么用?Python loading.load_session_from_conf_options使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类keystoneauth1.loading
的用法示例。
在下文中一共展示了loading.load_session_from_conf_options方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: get_client
# 需要导入模块: from keystoneauth1 import loading [as 别名]
# 或者: from keystoneauth1.loading import load_session_from_conf_options [as 别名]
def get_client(self, context, admin=False, **kwargs):
"""Get's the client with the correct auth/session context
"""
auth_plugin = None
if not self.session:
self.session = ks_loading.load_session_from_conf_options(
self.conf, self.group)
if admin or (context.is_admin and not context.auth_token):
if not self.admin_auth:
self.admin_auth = self._load_auth_plugin()
auth_plugin = self.admin_auth
else:
# NOTE(mkoderer): Manila basically needs admin clients for
# it's actions. If needed this must be enhanced later
raise exception.ManilaException(
_("Client (%s) is not flagged as admin") % self.group)
return self.client_class(session=self.session, auth=auth_plugin,
**kwargs)
示例2: get_admin_session
# 需要导入模块: from keystoneauth1 import loading [as 别名]
# 或者: from keystoneauth1.loading import load_session_from_conf_options [as 别名]
def get_admin_session():
"""Returns a keystone session from Mistral's service credentials."""
if CONF.keystone_authtoken.auth_type is None:
auth = auth_plugins.Password(
CONF.keystone_authtoken.www_authenticate_uri,
username=CONF.keystone_authtoken.admin_user,
password=CONF.keystone_authtoken.admin_password,
project_name=CONF.keystone_authtoken.admin_tenant_name,
# NOTE(jaosorior): Once mistral supports keystone v3 properly, we
# can fetch the following values from the configuration.
user_domain_name='Default',
project_domain_name='Default')
return ks_session.Session(auth=auth)
else:
auth = loading.load_auth_from_conf_options(
CONF,
'keystone_authtoken'
)
return loading.load_session_from_conf_options(
CONF,
'keystone',
auth=auth
)
示例3: __init__
# 需要导入模块: from keystoneauth1 import loading [as 别名]
# 或者: from keystoneauth1.loading import load_session_from_conf_options [as 别名]
def __init__(self, **kwargs):
super(MonascaCollector, self).__init__(**kwargs)
self.auth = ks_loading.load_auth_from_conf_options(
CONF,
COLLECTOR_MONASCA_OPTS)
self.session = ks_loading.load_session_from_conf_options(
CONF,
COLLECTOR_MONASCA_OPTS,
auth=self.auth)
self.ks_client = ks_client.Client(
session=self.session,
interface=CONF.collector_monasca.interface,
)
self.mon_endpoint = self._get_monasca_endpoint()
if not self.mon_endpoint:
raise EndpointNotFound()
self._conn = mclient.Client(
api_version=MONASCA_API_VERSION,
session=self.session,
endpoint=self.mon_endpoint)
# NOTE(lukapeschke) This function should be removed as soon as the endpoint
# it no longer required by monascaclient
示例4: __init__
# 需要导入模块: from keystoneauth1 import loading [as 别名]
# 或者: from keystoneauth1.loading import load_session_from_conf_options [as 别名]
def __init__(self, **kwargs):
super(GnocchiStorage, self).__init__(**kwargs)
conf = kwargs.get('conf') or ck_utils.load_conf(
CONF.collect.metrics_conf)
self.conf = validate_conf(conf)
self.auth = ks_loading.load_auth_from_conf_options(
CONF,
GNOCCHI_STORAGE_OPTS)
self.session = ks_loading.load_session_from_conf_options(
CONF,
GNOCCHI_STORAGE_OPTS,
auth=self.auth)
self._conn = gclient.Client(
'1',
session=self.session,
adapter_options={'connect_retries': 3,
'interface': CONF.storage_gnocchi.interface})
self._archive_policy_name = (
CONF.storage_gnocchi.archive_policy_name)
self._archive_policy_definition = json.loads(
CONF.storage_gnocchi.archive_policy_definition)
self._period = kwargs.get('period') or CONF.collect.period
self._measurements = dict()
self._resource_type_data = dict()
self._init_resource_types()
示例5: _create_client
# 需要导入模块: from keystoneauth1 import loading [as 别名]
# 或者: from keystoneauth1.loading import load_session_from_conf_options [as 别名]
def _create_client(self):
"""Create the HTTP session accessing the placement service."""
# Flush _resource_providers and aggregates so we start from a
# clean slate.
self._resource_providers = {}
self._provider_aggregate_map = {}
# TODO(lajoskatona): perhaps not the best to override config options,
# actually the abused keystoneauth1 options are:
# auth_type (used for deciding for NoAuthClient) and auth_section
# (used for communicating the url for the NoAuthClient)
if self._conf.placement.auth_type == 'noauth':
return NoAuthClient(self._conf.placement.auth_section)
else:
auth_plugin = keystone.load_auth_from_conf_options(
self._conf, 'placement')
return keystone.load_session_from_conf_options(
self._conf, 'placement', auth=auth_plugin,
additional_headers={'accept': 'application/json'})
示例6: _get_session
# 需要导入模块: from keystoneauth1 import loading [as 别名]
# 或者: from keystoneauth1.loading import load_session_from_conf_options [as 别名]
def _get_session(self, auth):
session = ka_loading.load_session_from_conf_options(
CONF, ksconf.CFG_GROUP, auth=auth)
return session
示例7: get_os_admin_session
# 需要导入模块: from keystoneauth1 import loading [as 别名]
# 或者: from keystoneauth1.loading import load_session_from_conf_options [as 别名]
def get_os_admin_session():
"""Create a context to interact with OpenStack as an administrator."""
# NOTE(ft): this is a singletone because keystone's session looks thread
# safe for both regular and token renewal requests
global _admin_session
if not _admin_session:
auth_plugin = ks_loading.load_auth_from_conf_options(
CONF, GROUP_AUTHTOKEN)
_admin_session = ks_loading.load_session_from_conf_options(
CONF, GROUP_AUTHTOKEN, auth=auth_plugin)
return _admin_session
示例8: get_session
# 需要导入模块: from keystoneauth1 import loading [as 别名]
# 或者: from keystoneauth1.loading import load_session_from_conf_options [as 别名]
def get_session(self):
"""Initializes a Keystone session.
:return: a Keystone Session object
"""
if not self._session:
self._session = ks_loading.load_session_from_conf_options(
cfg.CONF, self.section, auth=self.get_auth())
return self._session
示例9: _get_session
# 需要导入模块: from keystoneauth1 import loading [as 别名]
# 或者: from keystoneauth1.loading import load_session_from_conf_options [as 别名]
def _get_session():
global _session
if not _session:
auth = ka_loading.load_auth_from_conf_options(CONF, GROUP)
_session = ka_loading.load_session_from_conf_options(
CONF, GROUP, auth=auth)
return _session
示例10: get_session
# 需要导入模块: from keystoneauth1 import loading [as 别名]
# 或者: from keystoneauth1.loading import load_session_from_conf_options [as 别名]
def get_session():
"""Get a vitrage service credentials auth session."""
auth_plugin = ka_loading.load_auth_from_conf_options(CONF, CFG_GROUP)
return ka_loading.load_session_from_conf_options(
CONF, CFG_GROUP, auth=auth_plugin
)
示例11: __init__
# 需要导入模块: from keystoneauth1 import loading [as 别名]
# 或者: from keystoneauth1.loading import load_session_from_conf_options [as 别名]
def __init__(self):
self.auth = ks_loading.load_auth_from_conf_options(
CONF,
FETCHER_KEYSTONE_OPTS)
self.session = ks_loading.load_session_from_conf_options(
CONF,
FETCHER_KEYSTONE_OPTS,
auth=self.auth)
self.admin_ks = kclient.Client(
version=CONF.fetcher_keystone.keystone_version,
session=self.session,
auth_url=self.auth.auth_url)
示例12: _get_keystone_session
# 需要导入模块: from keystoneauth1 import loading [as 别名]
# 或者: from keystoneauth1.loading import load_session_from_conf_options [as 别名]
def _get_keystone_session(self):
auth = ka_loading.load_auth_from_conf_options(CONF,
_CLIENTS_AUTH_GROUP)
sess = ka_loading.load_session_from_conf_options(CONF,
_CLIENTS_AUTH_GROUP,
auth=auth)
return sess
示例13: _build_trust
# 需要导入模块: from keystoneauth1 import loading [as 别名]
# 或者: from keystoneauth1.loading import load_session_from_conf_options [as 别名]
def _build_trust(self):
# Get zaqar trustee user ID for trust building
auth = ks_loading.load_auth_from_conf_options(CONF, 'zaqar')
session = ks_loading.load_session_from_conf_options(CONF, 'zaqar')
zaqar_trustee_user_id = session.get_user_id(auth=auth)
try:
trust = self.keystone().trust_get_by_trustor(self.user,
zaqar_trustee_user_id,
self.project)
if not trust:
# Create a trust if no existing one found
roles = self.notifier_roles
for role in roles:
# Remove 'admin' role from delegated roles list
# unless it is the only role user has
if role == 'admin' and len(roles) > 1:
roles.remove(role)
trust = self.keystone().trust_create(self.user,
zaqar_trustee_user_id,
self.project,
roles)
except exc.InternalError as ex:
LOG.error('Can not build trust between user %(user)s and zaqar '
'service user %(zaqar)s for receiver %(receiver)s.',
{
'user': self.user,
'zaqar': zaqar_trustee_user_id,
'receiver': self.id
})
raise exc.EResourceCreation(type='trust',
message=str(ex))
return trust.id
示例14: _get_auth_and_session
# 需要导入模块: from keystoneauth1 import loading [as 别名]
# 或者: from keystoneauth1.loading import load_session_from_conf_options [as 别名]
def _get_auth_and_session(confgrp):
ksa_auth = ks_loading.load_auth_from_conf_options(CONF, confgrp)
return ks_loading.load_session_from_conf_options(
CONF, confgrp, auth=ksa_auth)
示例15: _session_and_auth
# 需要导入模块: from keystoneauth1 import loading [as 别名]
# 或者: from keystoneauth1.loading import load_session_from_conf_options [as 别名]
def _session_and_auth(context):
# Session is cached, but auth needs to be pulled from context each time.
global _SESSION
if not _SESSION:
_SESSION = ks_loading.load_session_from_conf_options(
CONF, cyborg.conf.glance.glance_group.name)
auth = service_auth.get_auth_plugin(context)
return _SESSION, auth