|
Implements blueprint cfg-filter-view
At the moment, if a module requires a configuration option from another
module, we do:
CONF.import_opt('source.module', 'option_name')
but, in fact, all options from the imported module are available for
use.
The new ConfigFilter class makes it possible to enforce which options
are available within a module e.g. with
CONF = cfgfilter.ConfigFilter(cfg.CONF)
CONF.import_opt('foo', 'source.module')
CONF.register_opt(StrOpt('bar'))
then the foo and bar options would be the only options available via
this CONF object while still being available via the global cfg.CONF
object.
Change-Id: Ie3aa2cd090a626da8afd27ecb78853cbf279bc8b
|