The oslo_config library added support for a choices keyword argument in
version 1.2.0a3. This commit leverages the use of choices for StrOpts in
Neutron's configuration.
References:
http://docs.openstack.org/developer/oslo.config/#a3
https://bugs.launchpad.net/oslo-incubator/+bug/
1123043
Change-Id: I2f935731ed7e1dea6d297dd72960d01cb8859656
from oslo_config import cfg
+from neutron.common import constants
+
OPTS = [
- cfg.StrOpt('agent_mode', default='legacy',
+ cfg.StrOpt('agent_mode', default=constants.L3_AGENT_MODE_LEGACY,
+ choices=(constants.L3_AGENT_MODE_DVR,
+ constants.L3_AGENT_MODE_DVR_SNAT,
+ constants.L3_AGENT_MODE_LEGACY),
help=_("The working mode for the agent. Allowed modes are: "
"'legacy' - this preserves the existing behavior "
"where the L3 agent is deployed on a centralized "
from oslo_config import cfg
+from neutron.agent.linux import keepalived
from neutron.common import constants as l3_constants
from neutron.i18n import _LE
from neutron.openstack.common import log as logging
'config files')),
cfg.StrOpt('ha_vrrp_auth_type',
default='PASS',
- help=_('VRRP authentication type AH/PASS')),
+ choices=keepalived.VALID_AUTH_TYPES,
+ help=_('VRRP authentication type')),
cfg.StrOpt('ha_vrrp_auth_password',
help=_('VRRP authentication password'),
secret=True),
help=_("List of <physical_network>:<physical_interface>")),
cfg.StrOpt('vnic_type',
default=constants.VIF_TYPE_DIRECT,
- help=_("Type of VM network interface: mlnx_direct or "
- "hostdev")),
+ choices=(constants.VIF_TYPE_DIRECT, constants.VIF_TYPE_HOSTDEV),
+ help=_("Type of VM network interface")),
cfg.StrOpt('daemon_endpoint',
default='tcp://127.0.0.1:60001',
help=_('eswitch daemon end point')),
"does not support namespaces otherwise access_network "
"should be used.")),
cfg.StrOpt('default_transport_type', default='stt',
+ choices=('stt', 'gre', 'bridge', 'ipsec_gre', 'ipsec_stt'),
deprecated_group='NVP',
- help=_("The default network tranport type to use (stt, gre, "
- "bridge, ipsec_gre, or ipsec_stt)")),
+ help=_("The default network transport type to use")),
cfg.StrOpt('agent_mode', default=AgentModes.AGENT,
deprecated_group='NVP',
help=_("The mode used to implement DHCP/metadata services.")),