Split `storage` into (message|management)_storage
We split both, data and control, planes and we were diligent in splitting the configuration sections. However, we forgot to split the `storage` option in the `drivers` section. This patch does that and marks the old option as deprecated. Closes-bug: #1462025 Change-Id: I692c35dcf217bede557ac463b2388f9a60d96c79
This commit is contained in:
parent
e972097b92
commit
de1b3307fa
|
@ -127,14 +127,16 @@ function configure_zaqar {
|
|||
|
||||
if [ "$ZAQAR_BACKEND" = 'mongodb' ] ; then
|
||||
iniset $ZAQAR_CONF DEFAULT pooling True
|
||||
iniset $ZAQAR_CONF drivers storage mongodb
|
||||
iniset $ZAQAR_CONF drivers message_store mongodb
|
||||
iniset $ZAQAR_CONF 'drivers:message_store:mongodb' uri mongodb://localhost:27017/zaqar
|
||||
iniset $ZAQAR_CONF 'drivers:message_store:mongodb' database zaqar
|
||||
|
||||
iniset $ZAQAR_CONF drivers management_store mongodb
|
||||
iniset $ZAQAR_CONF 'drivers:management_store:mongodb' uri mongodb://localhost:27017/zaqar_mgmt
|
||||
iniset $ZAQAR_CONF 'drivers:management_store:mongodb' database zaqar_mgmt
|
||||
configure_mongodb
|
||||
elif [ "$ZAQAR_BACKEND" = 'redis' ] ; then
|
||||
iniset $ZAQAR_CONF drivers storage redis
|
||||
iniset $ZAQAR_CONF drivers message_store redis
|
||||
iniset $ZAQAR_CONF 'drivers:message_store:redis' uri redis://localhost:6379
|
||||
iniset $ZAQAR_CONF 'drivers:message_store:redis' database zaqar
|
||||
configure_redis
|
||||
|
|
|
@ -5,7 +5,7 @@ admin_mode = False
|
|||
|
||||
[drivers]
|
||||
transport = wsgi
|
||||
storage = invalid
|
||||
message_store = invalid
|
||||
|
||||
[drivers:transport:wsgi]
|
||||
port = 8888
|
||||
|
|
|
@ -4,7 +4,7 @@ verbose = False
|
|||
|
||||
[drivers]
|
||||
transport = invalid
|
||||
storage = sqlalchemy
|
||||
message_store = sqlalchemy
|
||||
|
||||
[drivers:transport:wsgi]
|
||||
port = 8888
|
||||
|
|
|
@ -25,7 +25,7 @@ unreliable = True
|
|||
# Transport driver module (e.g., wsgi, zmq)
|
||||
transport = wsgi
|
||||
# Storage driver module (e.g., mongodb, sqlalchemy)
|
||||
storage = mongodb
|
||||
message_store = mongodb
|
||||
|
||||
[drivers:transport:wsgi]
|
||||
bind = 127.0.0.1
|
||||
|
|
|
@ -6,7 +6,7 @@ verbose = False
|
|||
|
||||
[drivers]
|
||||
transport = wsgi
|
||||
storage = mongodb
|
||||
message_store = mongodb
|
||||
|
||||
[drivers:transport:wsgi]
|
||||
bind = 0.0.0.0:8888
|
||||
|
|
|
@ -6,7 +6,7 @@
|
|||
transport = websocket
|
||||
|
||||
# Storage driver to use (string value)
|
||||
storage = mongodb
|
||||
message_store = mongodb
|
||||
|
||||
[drivers:management_store:mongodb]
|
||||
|
||||
|
|
|
@ -4,7 +4,8 @@ verbose = False
|
|||
|
||||
[drivers]
|
||||
transport = wsgi
|
||||
storage = faulty
|
||||
message_store = faulty
|
||||
management_store = faulty
|
||||
|
||||
[drivers:transport:wsgi]
|
||||
port = 8888
|
||||
|
|
|
@ -5,7 +5,7 @@ unreliable = True
|
|||
|
||||
[drivers]
|
||||
transport = wsgi
|
||||
storage = mongodb
|
||||
message_store = mongodb
|
||||
|
||||
[drivers:transport:wsgi]
|
||||
port = 8888
|
||||
|
|
|
@ -5,7 +5,7 @@ unreliable = True
|
|||
|
||||
[drivers]
|
||||
transport = wsgi
|
||||
storage = mongodb
|
||||
message_store = mongodb
|
||||
|
||||
[drivers:transport:wsgi]
|
||||
port = 8888
|
||||
|
|
|
@ -1,3 +1,3 @@
|
|||
[drivers]
|
||||
transport = wsgi
|
||||
storage = mongodb
|
||||
message_store = mongodb
|
||||
|
|
|
@ -5,7 +5,7 @@ unreliable = True
|
|||
|
||||
[drivers]
|
||||
transport = wsgi
|
||||
storage = mongodb
|
||||
message_store = mongodb
|
||||
|
||||
[drivers:message_store:mongodb]
|
||||
uri = mongodb://127.0.0.1:27017
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
[drivers]
|
||||
transport = wsgi
|
||||
storage = mongodb
|
||||
message_store = mongodb
|
||||
|
||||
# Test support for deprecated options
|
||||
[limits:transport]
|
||||
|
|
|
@ -4,7 +4,7 @@ verbose = False
|
|||
|
||||
[drivers]
|
||||
transport = wsgi
|
||||
storage = redis
|
||||
message_store = redis
|
||||
|
||||
[drivers:transport:wsgi]
|
||||
port = 8888
|
||||
|
|
|
@ -3,7 +3,7 @@ pooling = True
|
|||
|
||||
[drivers]
|
||||
transport = wsgi
|
||||
storage = redis
|
||||
message_store = redis
|
||||
|
||||
[drivers:message_store:redis]
|
||||
uri = redis://127.0.0.1:6379
|
||||
|
|
|
@ -5,7 +5,7 @@ admin_mode = False
|
|||
|
||||
[drivers]
|
||||
transport = wsgi
|
||||
storage = sqlalchemy
|
||||
message_store = sqlalchemy
|
||||
|
||||
[drivers:transport:wsgi]
|
||||
bind = 0.0.0.0
|
||||
|
|
|
@ -4,7 +4,7 @@ admin_mode = True
|
|||
|
||||
[drivers]
|
||||
transport = wsgi
|
||||
storage = sqlalchemy
|
||||
message_store = sqlalchemy
|
||||
|
||||
[drivers:transport:wsgi]
|
||||
bind = 0.0.0.0
|
||||
|
|
|
@ -60,8 +60,11 @@ _GENERAL_OPTIONS = (
|
|||
_DRIVER_OPTIONS = (
|
||||
cfg.StrOpt('transport', default='wsgi',
|
||||
help='Transport driver to use.'),
|
||||
cfg.StrOpt('storage', default='mongodb',
|
||||
help='Storage driver to use.'),
|
||||
cfg.StrOpt('message_store', default='mongodb',
|
||||
deprecated_opts=[cfg.DeprecatedOpt('storage')],
|
||||
help='Storage driver to use as the messaging store.'),
|
||||
cfg.StrOpt('management_store', default='mongodb',
|
||||
help='Storage driver to use as the management store.'),
|
||||
)
|
||||
|
||||
_DRIVER_GROUP = 'drivers'
|
||||
|
|
|
@ -693,7 +693,7 @@ class PoolsBase(ControllerBase):
|
|||
"""A controller for managing pools."""
|
||||
|
||||
def _check_capabilities(self, uri, group=None, name=None):
|
||||
default_store = self.driver.conf.drivers.storage
|
||||
default_store = self.driver.conf.drivers.message_store
|
||||
pool_caps = self.capabilities(group=group, name=name)
|
||||
|
||||
if not pool_caps:
|
||||
|
@ -723,7 +723,7 @@ class PoolsBase(ControllerBase):
|
|||
if not len(group) > 0:
|
||||
return ()
|
||||
|
||||
default_store = self.driver.conf.drivers.storage
|
||||
default_store = self.driver.conf.drivers.message_store
|
||||
|
||||
pool_store = utils.load_storage_impl(group[0]['uri'],
|
||||
default_store=default_store)
|
||||
|
|
|
@ -118,7 +118,7 @@ _COMMON_OPTIONS = (
|
|||
|
||||
MANAGEMENT_MONGODB_OPTIONS = _COMMON_OPTIONS
|
||||
MESSAGE_MONGODB_OPTIONS = _COMMON_OPTIONS + (
|
||||
# options used only by message_storage
|
||||
# options used only by message_store
|
||||
cfg.IntOpt('partitions', default=2,
|
||||
deprecated_opts=[cfg.DeprecatedOpt(
|
||||
'partitions',
|
||||
|
|
|
@ -585,7 +585,7 @@ class Catalog(object):
|
|||
LOG.debug(ex)
|
||||
|
||||
conf_section = ('drivers:message_store:%s' %
|
||||
self._conf.drivers.storage)
|
||||
self._conf.drivers.message_store)
|
||||
|
||||
if conf_section not in self._conf:
|
||||
# NOTE(kgriffs): Return `None`, rather than letting the
|
||||
|
|
|
@ -58,10 +58,10 @@ def dynamic_conf(uri, options, conf=None):
|
|||
|
||||
if 'drivers' not in conf:
|
||||
# NOTE(cpp-cabrera): parse general opts: 'drivers'
|
||||
driver_opts = utils.dict_to_conf({'storage': storage_type})
|
||||
driver_opts = utils.dict_to_conf({'message_store': storage_type})
|
||||
conf.register_opts(driver_opts, group=u'drivers')
|
||||
|
||||
conf.set_override('storage', storage_type, 'drivers')
|
||||
conf.set_override('message_store', storage_type, 'drivers')
|
||||
|
||||
for opt in options:
|
||||
if opt in conf[storage_group]:
|
||||
|
@ -116,9 +116,14 @@ def load_storage_driver(conf, cache, storage_type=None,
|
|||
the queue controller, mainly.
|
||||
"""
|
||||
|
||||
mode = 'control' if control_mode else 'data'
|
||||
if control_mode:
|
||||
mode = 'control'
|
||||
storage_type = storage_type or conf['drivers'].management_store
|
||||
else:
|
||||
mode = 'data'
|
||||
storage_type = storage_type or conf['drivers'].message_store
|
||||
|
||||
driver_type = 'zaqar.{0}.storage'.format(mode)
|
||||
storage_type = storage_type or conf['drivers'].storage
|
||||
|
||||
_invoke_args = [conf, cache]
|
||||
if control_driver is not None:
|
||||
|
|
Loading…
Reference in New Issue