def load_conf_modules():
"""Load all modules that contain configuration.
Method iterates over modules of :py:mod:`monasca_events_api.conf`
and imports only those that contain following methods:
- list_opts (required by oslo_config.genconfig)
- register_opts (required by :py:currentmodule:)
"""
imported_modules = []
for modname in _list_module_names():
mod = importutils.import_module('monasca_events_api.conf.' + modname)
required_funcs = ['register_opts', 'list_opts']
for func in required_funcs:
if not hasattr(mod, func):
msg = ("The module 'monasca_events_api.conf.%s' should have a"
" '%s' function which returns"
" the config options."
% (modname, func))
LOG.warning(msg)
else:
imported_modules.append(mod)
LOG.debug('Found %d modules that contain configuration',
len(imported_modules))
return imported_modules
评论列表
文章目录