Correct i18n message for ovs plugin
Part of bp make-string-localizable Change-Id: I891d0128fd9e24805cef2c1db99cf8e716c7b4a0
This commit is contained in:
parent
29f1211269
commit
0ca4baa978
@ -186,18 +186,18 @@ class OVSQuantumAgent(object):
|
||||
return network_id
|
||||
|
||||
def network_delete(self, context, **kwargs):
|
||||
LOG.debug("network_delete received")
|
||||
LOG.debug(_("network_delete received"))
|
||||
network_id = kwargs.get('network_id')
|
||||
LOG.debug("Delete %s", network_id)
|
||||
LOG.debug(_("Delete %s"), network_id)
|
||||
# The network may not be defined on this agent
|
||||
lvm = self.local_vlan_map.get(network_id)
|
||||
if lvm:
|
||||
self.reclaim_local_vlan(network_id, lvm)
|
||||
else:
|
||||
LOG.debug("Network %s not used on agent.", network_id)
|
||||
LOG.debug(_("Network %s not used on agent."), network_id)
|
||||
|
||||
def port_update(self, context, **kwargs):
|
||||
LOG.debug("port_update received")
|
||||
LOG.debug(_("port_update received"))
|
||||
port = kwargs.get('port')
|
||||
network_type = kwargs.get('network_type')
|
||||
segmentation_id = kwargs.get('segmentation_id')
|
||||
@ -208,7 +208,7 @@ class OVSQuantumAgent(object):
|
||||
segmentation_id, port['admin_state_up'])
|
||||
|
||||
def tunnel_update(self, context, **kwargs):
|
||||
LOG.debug("tunnel_update received")
|
||||
LOG.debug(_("tunnel_update received"))
|
||||
if not self.enable_tunneling:
|
||||
return
|
||||
tunnel_ip = kwargs.get('tunnel_ip')
|
||||
@ -237,10 +237,12 @@ class OVSQuantumAgent(object):
|
||||
'''
|
||||
|
||||
if not self.available_local_vlans:
|
||||
LOG.error("No local VLAN available for net-id=%s", net_uuid)
|
||||
LOG.error(_("No local VLAN available for net-id=%s"), net_uuid)
|
||||
return
|
||||
lvid = self.available_local_vlans.pop()
|
||||
LOG.info("Assigning %s as local vlan for net-id=%s", lvid, net_uuid)
|
||||
LOG.info(_("Assigning %(vlan_id)s as local vlan for "
|
||||
"net-id=%(net_uuid)s"),
|
||||
{'vlan_id': lvid, 'net_uuid': net_uuid})
|
||||
self.local_vlan_map[net_uuid] = LocalVLANMapping(lvid, network_type,
|
||||
physical_network,
|
||||
segmentation_id)
|
||||
@ -260,8 +262,8 @@ class OVSQuantumAgent(object):
|
||||
actions="mod_vlan_vid:%s,output:%s" %
|
||||
(lvid, self.patch_int_ofport))
|
||||
else:
|
||||
LOG.error("Cannot provision GRE network for net-id=%s "
|
||||
"- tunneling disabled", net_uuid)
|
||||
LOG.error(_("Cannot provision GRE network for net-id=%s "
|
||||
"- tunneling disabled"), net_uuid)
|
||||
elif network_type == constants.TYPE_FLAT:
|
||||
if physical_network in self.phys_brs:
|
||||
# outbound
|
||||
@ -277,9 +279,10 @@ class OVSQuantumAgent(object):
|
||||
dl_vlan=0xffff,
|
||||
actions="mod_vlan_vid:%s,normal" % lvid)
|
||||
else:
|
||||
LOG.error("Cannot provision flat network for net-id=%s "
|
||||
"- no bridge for physical_network %s", net_uuid,
|
||||
physical_network)
|
||||
LOG.error(_("Cannot provision flat network for "
|
||||
"net-id=%(net_uuid)s - no bridge for "
|
||||
"physical_network %(physical_network)s"),
|
||||
locals())
|
||||
elif network_type == constants.TYPE_VLAN:
|
||||
if physical_network in self.phys_brs:
|
||||
# outbound
|
||||
@ -295,15 +298,17 @@ class OVSQuantumAgent(object):
|
||||
dl_vlan=segmentation_id,
|
||||
actions="mod_vlan_vid:%s,normal" % lvid)
|
||||
else:
|
||||
LOG.error("Cannot provision VLAN network for net-id=%s "
|
||||
"- no bridge for physical_network %s", net_uuid,
|
||||
physical_network)
|
||||
LOG.error(_("Cannot provision VLAN network for "
|
||||
"net-id=%(net_uuid)s - no bridge for "
|
||||
"physical_network %(physical_network)s"),
|
||||
locals())
|
||||
elif network_type == constants.TYPE_LOCAL:
|
||||
# no flows needed for local networks
|
||||
pass
|
||||
else:
|
||||
LOG.error("Cannot provision unknown network type %s for "
|
||||
"net-id=%s", network_type, net_uuid)
|
||||
LOG.error(_("Cannot provision unknown network type "
|
||||
"%(network_type)s for net-id=%(net_uuid)s"),
|
||||
locals())
|
||||
|
||||
def reclaim_local_vlan(self, net_uuid, lvm):
|
||||
'''Reclaim a local VLAN.
|
||||
@ -311,7 +316,9 @@ class OVSQuantumAgent(object):
|
||||
:param net_uuid: the network uuid associated with this vlan.
|
||||
:param lvm: a LocalVLANMapping object that tracks (vlan, lsw_id,
|
||||
vif_ids) mapping.'''
|
||||
LOG.info("Reclaiming vlan = %s from net-id = %s", lvm.vlan, net_uuid)
|
||||
LOG.info(_("Reclaiming vlan = %(vlan_id)s from net-id = %(net_uuid)s"),
|
||||
{'vlan_id': lvm.vlan,
|
||||
'net_uuid': net_uuid})
|
||||
|
||||
if lvm.network_type == constants.TYPE_GRE:
|
||||
if self.enable_tunneling:
|
||||
@ -343,8 +350,10 @@ class OVSQuantumAgent(object):
|
||||
# no flows needed for local networks
|
||||
pass
|
||||
else:
|
||||
LOG.error("Cannot reclaim unknown network type %s for net-id=%s",
|
||||
lvm.network_type, net_uuid)
|
||||
LOG.error(_("Cannot reclaim unknown network type "
|
||||
"%(network_type)s for net-id=%(net_uuid)s"),
|
||||
{'network_type': lvm.network_type,
|
||||
'net_uuid': net_uuid})
|
||||
|
||||
del self.local_vlan_map[net_uuid]
|
||||
self.available_local_vlans.add(lvm.vlan)
|
||||
@ -446,10 +455,10 @@ class OVSQuantumAgent(object):
|
||||
self.patch_int_ofport = self.tun_br.add_patch_port("patch-int",
|
||||
"patch-tun")
|
||||
if int(self.patch_tun_ofport) < 0 or int(self.patch_int_ofport) < 0:
|
||||
LOG.error("Failed to create OVS patch port. Cannot have tunneling "
|
||||
"enabled on this agent, since this version of OVS does "
|
||||
"not support tunnels or patch ports. "
|
||||
"Agent terminated!")
|
||||
LOG.error(_("Failed to create OVS patch port. Cannot have "
|
||||
"tunneling enabled on this agent, since this version "
|
||||
"of OVS does not support tunnels or patch ports. "
|
||||
"Agent terminated!"))
|
||||
exit(1)
|
||||
self.tun_br.remove_all_flows()
|
||||
self.tun_br.add_flow(priority=1, actions="drop")
|
||||
@ -466,13 +475,15 @@ class OVSQuantumAgent(object):
|
||||
self.phys_ofports = {}
|
||||
ip_wrapper = ip_lib.IPWrapper(self.root_helper)
|
||||
for physical_network, bridge in bridge_mappings.iteritems():
|
||||
LOG.info("Mapping physical network %s to bridge %s",
|
||||
physical_network, bridge)
|
||||
LOG.info(_("Mapping physical network %(physical_network)s to "
|
||||
"bridge %(bridge)s"),
|
||||
locals())
|
||||
# setup physical bridge
|
||||
if not ip_lib.device_exists(bridge, self.root_helper):
|
||||
LOG.error("Bridge %s for physical network %s does not exist. "
|
||||
"Agent terminated!",
|
||||
bridge, physical_network)
|
||||
LOG.error(_("Bridge %(bridge)s for physical network "
|
||||
"%(physical_network)s does not exist. Agent "
|
||||
"terminated!"),
|
||||
locals())
|
||||
sys.exit(1)
|
||||
br = ovs_lib.OVSBridge(bridge, self.root_helper)
|
||||
br.remove_all_flows()
|
||||
@ -522,23 +533,25 @@ class OVSQuantumAgent(object):
|
||||
else:
|
||||
self.port_dead(vif_port)
|
||||
else:
|
||||
LOG.debug("No VIF port for port %s defined on agent.", port_id)
|
||||
LOG.debug(_("No VIF port for port %s defined on agent."), port_id)
|
||||
|
||||
def treat_devices_added(self, devices):
|
||||
resync = False
|
||||
for device in devices:
|
||||
LOG.info("Port %s added", device)
|
||||
LOG.info(_("Port %s added"), device)
|
||||
try:
|
||||
details = self.plugin_rpc.get_device_details(self.context,
|
||||
device,
|
||||
self.agent_id)
|
||||
except Exception as e:
|
||||
LOG.debug("Unable to get port details for %s: %s", device, e)
|
||||
LOG.debug(_("Unable to get port details for "
|
||||
"%(device)s: %(e)s"), locals())
|
||||
resync = True
|
||||
continue
|
||||
port = self.int_br.get_vif_port_by_id(details['device'])
|
||||
if 'port_id' in details:
|
||||
LOG.info("Port %s updated. Details: %s", device, details)
|
||||
LOG.info(_("Port %(device)s updated. Details: %(details)s"),
|
||||
locals())
|
||||
self.treat_vif_port(port, details['port_id'],
|
||||
details['network_id'],
|
||||
details['network_type'],
|
||||
@ -546,7 +559,7 @@ class OVSQuantumAgent(object):
|
||||
details['segmentation_id'],
|
||||
details['admin_state_up'])
|
||||
else:
|
||||
LOG.debug("Device %s not defined on plugin", device)
|
||||
LOG.debug(_("Device %s not defined on plugin"), device)
|
||||
if (port and int(port.ofport) != -1):
|
||||
self.port_dead(port)
|
||||
return resync
|
||||
@ -554,20 +567,21 @@ class OVSQuantumAgent(object):
|
||||
def treat_devices_removed(self, devices):
|
||||
resync = False
|
||||
for device in devices:
|
||||
LOG.info("Attachment %s removed", device)
|
||||
LOG.info(_("Attachment %s removed"), device)
|
||||
try:
|
||||
details = self.plugin_rpc.update_device_down(self.context,
|
||||
device,
|
||||
self.agent_id)
|
||||
except Exception as e:
|
||||
LOG.debug("port_removed failed for %s: %s", device, e)
|
||||
LOG.debug(_("port_removed failed for %(device)s: %(e)s"),
|
||||
locals())
|
||||
resync = True
|
||||
continue
|
||||
if details['exists']:
|
||||
LOG.info("Port %s updated.", device)
|
||||
LOG.info(_("Port %s updated."), device)
|
||||
# Nothing to do regarding local networking
|
||||
else:
|
||||
LOG.debug("Device %s not defined on plugin", device)
|
||||
LOG.debug(_("Device %s not defined on plugin"), device)
|
||||
self.port_unbound(device)
|
||||
return resync
|
||||
|
||||
@ -591,7 +605,8 @@ class OVSQuantumAgent(object):
|
||||
tun_name = 'gre-%s' % tunnel['id']
|
||||
self.tun_br.add_tunnel_port(tun_name, tunnel['ip_address'])
|
||||
except Exception as e:
|
||||
LOG.debug("Unable to sync tunnel IP %s: %s", self.local_ip, e)
|
||||
LOG.debug(_("Unable to sync tunnel IP %(local_ip)s: %(e)s"),
|
||||
{'local_ip': self.local_ip, 'e': e})
|
||||
resync = True
|
||||
return resync
|
||||
|
||||
@ -604,26 +619,26 @@ class OVSQuantumAgent(object):
|
||||
try:
|
||||
start = time.time()
|
||||
if sync:
|
||||
LOG.info("Agent out of sync with plugin!")
|
||||
LOG.info(_("Agent out of sync with plugin!"))
|
||||
ports.clear()
|
||||
sync = False
|
||||
|
||||
# Notify the plugin of tunnel IP
|
||||
if self.enable_tunneling and tunnel_sync:
|
||||
LOG.info("Agent tunnel out of sync with plugin!")
|
||||
LOG.info(_("Agent tunnel out of sync with plugin!"))
|
||||
tunnel_sync = self.tunnel_sync()
|
||||
|
||||
port_info = self.update_ports(ports)
|
||||
|
||||
# notify plugin about port deltas
|
||||
if port_info:
|
||||
LOG.debug("Agent loop has new devices!")
|
||||
LOG.debug(_("Agent loop has new devices!"))
|
||||
# If treat devices fails - must resync with plugin
|
||||
sync = self.process_network_ports(port_info)
|
||||
ports = port_info['current']
|
||||
|
||||
except:
|
||||
LOG.exception("Error in agent event loop")
|
||||
LOG.exception(_("Error in agent event loop"))
|
||||
sync = True
|
||||
tunnel_sync = True
|
||||
|
||||
@ -632,8 +647,10 @@ class OVSQuantumAgent(object):
|
||||
if (elapsed < self.polling_interval):
|
||||
time.sleep(self.polling_interval - elapsed)
|
||||
else:
|
||||
LOG.debug("Loop iteration exceeded interval (%s vs. %s)!",
|
||||
self.polling_interval, elapsed)
|
||||
LOG.debug(_("Loop iteration exceeded interval "
|
||||
"(%(polling_interval)s vs. %(elapsed)s)!"),
|
||||
{'polling_interval': self.polling_interval,
|
||||
'elapsed': elapsed})
|
||||
|
||||
def daemon_loop(self):
|
||||
self.rpc_loop()
|
||||
@ -675,13 +692,13 @@ def main():
|
||||
try:
|
||||
agent_config = create_agent_config_map(cfg.CONF)
|
||||
except ValueError as e:
|
||||
LOG.error('%s Agent terminated!', e)
|
||||
LOG.error(_('%s Agent terminated!'), e)
|
||||
sys.exit(1)
|
||||
|
||||
plugin = OVSQuantumAgent(**agent_config)
|
||||
|
||||
# Start everything.
|
||||
LOG.info("Agent initialized successfully, now running... ")
|
||||
LOG.info(_("Agent initialized successfully, now running... "))
|
||||
plugin.daemon_loop()
|
||||
sys.exit(0)
|
||||
|
||||
|
@ -90,9 +90,11 @@ def sync_vlan_allocations(network_vlan_ranges):
|
||||
# it's not allocatable, so check if its allocated
|
||||
if not alloc.allocated:
|
||||
# it's not, so remove it from table
|
||||
LOG.debug("removing vlan %s on physical network "
|
||||
"%s from pool" %
|
||||
(alloc.vlan_id, physical_network))
|
||||
LOG.debug(_("Removing vlan %(vlan_id)s on "
|
||||
"physical network "
|
||||
"%(physical_network)s from pool"),
|
||||
{'vlan_id': alloc.vlan_id,
|
||||
'physical_network': physical_network})
|
||||
session.delete(alloc)
|
||||
del allocations[physical_network]
|
||||
|
||||
@ -106,9 +108,10 @@ def sync_vlan_allocations(network_vlan_ranges):
|
||||
for allocs in allocations.itervalues():
|
||||
for alloc in allocs:
|
||||
if not alloc.allocated:
|
||||
LOG.debug("removing vlan %s on physical network %s"
|
||||
" from pool" %
|
||||
(alloc.vlan_id, physical_network))
|
||||
LOG.debug(_("Removing vlan %(vlan_id)s on physical "
|
||||
"network %(physical_network)s from pool"),
|
||||
{'vlan_id': alloc.vlan_id,
|
||||
'physical_network': physical_network})
|
||||
session.delete(alloc)
|
||||
|
||||
|
||||
@ -130,8 +133,10 @@ def reserve_vlan(session):
|
||||
filter_by(allocated=False).
|
||||
first())
|
||||
if alloc:
|
||||
LOG.debug("reserving vlan %s on physical network %s from pool" %
|
||||
(alloc.vlan_id, alloc.physical_network))
|
||||
LOG.debug(_("Reserving vlan %(vlan_id)s on physical network "
|
||||
"%(physical_network)s from pool"),
|
||||
{'vlan_id': alloc.vlan_id,
|
||||
'physical_network': alloc.physical_network})
|
||||
alloc.allocated = True
|
||||
return (alloc.physical_network, alloc.vlan_id)
|
||||
raise q_exc.NoNetworkAvailable()
|
||||
@ -151,12 +156,13 @@ def reserve_specific_vlan(session, physical_network, vlan_id):
|
||||
else:
|
||||
raise q_exc.VlanIdInUse(vlan_id=vlan_id,
|
||||
physical_network=physical_network)
|
||||
LOG.debug("reserving specific vlan %s on physical network %s "
|
||||
"from pool" % (vlan_id, physical_network))
|
||||
LOG.debug(_("Reserving specific vlan %(vlan_id)s on physical "
|
||||
"network %(physical_network)s from pool"), locals())
|
||||
alloc.allocated = True
|
||||
except exc.NoResultFound:
|
||||
LOG.debug("reserving specific vlan %s on physical network %s "
|
||||
"outside pool" % (vlan_id, physical_network))
|
||||
LOG.debug(_("Reserving specific vlan %(vlan_id)s on physical "
|
||||
"network %(physical_network)s outside pool"),
|
||||
locals())
|
||||
alloc = ovs_models_v2.VlanAllocation(physical_network, vlan_id)
|
||||
alloc.allocated = True
|
||||
session.add(alloc)
|
||||
@ -177,12 +183,17 @@ def release_vlan(session, physical_network, vlan_id, network_vlan_ranges):
|
||||
break
|
||||
if not inside:
|
||||
session.delete(alloc)
|
||||
LOG.debug("releasing vlan %s on physical network %s %s pool" %
|
||||
(vlan_id, physical_network,
|
||||
inside and "to" or "outside"))
|
||||
LOG.debug(_("Releasing vlan %(vlan_id)s on physical network "
|
||||
"%(physical_network)s outside pool"),
|
||||
locals())
|
||||
else:
|
||||
LOG.debug(_("Releasing vlan %(vlan_id)s on physical network "
|
||||
"%(physical_network)s to pool"),
|
||||
locals())
|
||||
except exc.NoResultFound:
|
||||
LOG.warning("vlan_id %s on physical network %s not found" %
|
||||
(vlan_id, physical_network))
|
||||
LOG.warning(_("vlan_id %(vlan_id)s on physical network "
|
||||
"%(physical_network)s not found"),
|
||||
locals())
|
||||
|
||||
|
||||
def sync_tunnel_allocations(tunnel_id_ranges):
|
||||
@ -193,8 +204,9 @@ def sync_tunnel_allocations(tunnel_id_ranges):
|
||||
for tunnel_id_range in tunnel_id_ranges:
|
||||
tun_min, tun_max = tunnel_id_range
|
||||
if tun_max + 1 - tun_min > 1000000:
|
||||
LOG.error("Skipping unreasonable tunnel ID range %s:%s" %
|
||||
tunnel_id_range)
|
||||
LOG.error(_("Skipping unreasonable tunnel ID range "
|
||||
"%(tun_min)s:%(tun_max)s"),
|
||||
locals())
|
||||
else:
|
||||
tunnel_ids |= set(xrange(tun_min, tun_max + 1))
|
||||
|
||||
@ -211,7 +223,7 @@ def sync_tunnel_allocations(tunnel_id_ranges):
|
||||
# it's not allocatable, so check if its allocated
|
||||
if not alloc.allocated:
|
||||
# it's not, so remove it from table
|
||||
LOG.debug("removing tunnel %s from pool" %
|
||||
LOG.debug(_("Removing tunnel %s from pool"),
|
||||
alloc.tunnel_id)
|
||||
session.delete(alloc)
|
||||
|
||||
@ -238,7 +250,7 @@ def reserve_tunnel(session):
|
||||
filter_by(allocated=False).
|
||||
first())
|
||||
if alloc:
|
||||
LOG.debug("reserving tunnel %s from pool" % alloc.tunnel_id)
|
||||
LOG.debug(_("Reserving tunnel %s from pool"), alloc.tunnel_id)
|
||||
alloc.allocated = True
|
||||
return alloc.tunnel_id
|
||||
raise q_exc.NoNetworkAvailable()
|
||||
@ -252,10 +264,11 @@ def reserve_specific_tunnel(session, tunnel_id):
|
||||
one())
|
||||
if alloc.allocated:
|
||||
raise q_exc.TunnelIdInUse(tunnel_id=tunnel_id)
|
||||
LOG.debug("reserving specific tunnel %s from pool" % tunnel_id)
|
||||
LOG.debug(_("Reserving specific tunnel %s from pool"), tunnel_id)
|
||||
alloc.allocated = True
|
||||
except exc.NoResultFound:
|
||||
LOG.debug("reserving specific tunnel %s outside pool" % tunnel_id)
|
||||
LOG.debug(_("Reserving specific tunnel %s outside pool"),
|
||||
tunnel_id)
|
||||
alloc = ovs_models_v2.TunnelAllocation(tunnel_id)
|
||||
alloc.allocated = True
|
||||
session.add(alloc)
|
||||
@ -276,10 +289,11 @@ def release_tunnel(session, tunnel_id, tunnel_id_ranges):
|
||||
break
|
||||
if not inside:
|
||||
session.delete(alloc)
|
||||
LOG.debug("releasing tunnel %s %s pool" %
|
||||
(tunnel_id, inside and "to" or "outside"))
|
||||
LOG.debug(_("Releasing tunnel %s outside pool"), tunnel_id)
|
||||
else:
|
||||
LOG.debug(_("Releasing tunnel %s to pool"), tunnel_id)
|
||||
except exc.NoResultFound:
|
||||
LOG.warning("tunnel_id %s not found" % tunnel_id)
|
||||
LOG.warning(_("tunnel_id %s not found"), tunnel_id)
|
||||
|
||||
|
||||
def get_port(port_id):
|
||||
|
@ -64,7 +64,8 @@ class OVSRpcCallbacks(dhcp_rpc_base.DhcpRpcCallbackMixin):
|
||||
"""Agent requests device details"""
|
||||
agent_id = kwargs.get('agent_id')
|
||||
device = kwargs.get('device')
|
||||
LOG.debug("Device %s details requested from %s", device, agent_id)
|
||||
LOG.debug(_("Device %(device)s details requested from %(agent_id)s"),
|
||||
locals())
|
||||
port = ovs_db_v2.get_port(device)
|
||||
if port:
|
||||
binding = ovs_db_v2.get_network_binding(None, port['network_id'])
|
||||
@ -79,7 +80,7 @@ class OVSRpcCallbacks(dhcp_rpc_base.DhcpRpcCallbackMixin):
|
||||
ovs_db_v2.set_port_status(port['id'], q_const.PORT_STATUS_ACTIVE)
|
||||
else:
|
||||
entry = {'device': device}
|
||||
LOG.debug("%s can not be found in database", device)
|
||||
LOG.debug(_("%s can not be found in database"), device)
|
||||
return entry
|
||||
|
||||
def update_device_down(self, rpc_context, **kwargs):
|
||||
@ -87,7 +88,8 @@ class OVSRpcCallbacks(dhcp_rpc_base.DhcpRpcCallbackMixin):
|
||||
# (TODO) garyk - live migration and port status
|
||||
agent_id = kwargs.get('agent_id')
|
||||
device = kwargs.get('device')
|
||||
LOG.debug("Device %s no longer exists on %s", device, agent_id)
|
||||
LOG.debug(_("Device %(device)s no longer exists on %(agent_id)s"),
|
||||
locals())
|
||||
port = ovs_db_v2.get_port(device)
|
||||
if port:
|
||||
entry = {'device': device,
|
||||
@ -97,7 +99,7 @@ class OVSRpcCallbacks(dhcp_rpc_base.DhcpRpcCallbackMixin):
|
||||
else:
|
||||
entry = {'device': device,
|
||||
'exists': False}
|
||||
LOG.debug("%s can not be found in database", device)
|
||||
LOG.debug(_("%s can not be found in database"), device)
|
||||
return entry
|
||||
|
||||
def tunnel_sync(self, rpc_context, **kwargs):
|
||||
@ -197,8 +199,8 @@ class OVSQuantumPluginV2(db_base_plugin_v2.QuantumDbPluginV2,
|
||||
constants.TYPE_VLAN,
|
||||
constants.TYPE_GRE,
|
||||
constants.TYPE_NONE]:
|
||||
LOG.error("Invalid tenant_network_type: %s. "
|
||||
"Agent terminated!",
|
||||
LOG.error(_("Invalid tenant_network_type: %s. "
|
||||
"Agent terminated!"),
|
||||
self.tenant_network_type)
|
||||
sys.exit(1)
|
||||
self.enable_tunneling = cfg.CONF.OVS.enable_tunneling
|
||||
@ -207,8 +209,8 @@ class OVSQuantumPluginV2(db_base_plugin_v2.QuantumDbPluginV2,
|
||||
self._parse_tunnel_id_ranges()
|
||||
ovs_db_v2.sync_tunnel_allocations(self.tunnel_id_ranges)
|
||||
elif self.tenant_network_type == constants.TYPE_GRE:
|
||||
LOG.error("Tunneling disabled but tenant_network_type is 'gre'. "
|
||||
"Agent terminated!")
|
||||
LOG.error(_("Tunneling disabled but tenant_network_type is 'gre'. "
|
||||
"Agent terminated!"))
|
||||
sys.exit(1)
|
||||
self.setup_rpc()
|
||||
|
||||
@ -235,13 +237,13 @@ class OVSQuantumPluginV2(db_base_plugin_v2.QuantumDbPluginV2,
|
||||
int(vlan_min),
|
||||
int(vlan_max))
|
||||
except ValueError as ex:
|
||||
LOG.error("Invalid network VLAN range: '%s' - %s. "
|
||||
"Agent terminated!",
|
||||
entry, ex)
|
||||
LOG.error(_("Invalid network VLAN range: "
|
||||
"'%(range)s' - %(e)s. Agent terminated!"),
|
||||
{'range': entry, 'e': ex})
|
||||
sys.exit(1)
|
||||
else:
|
||||
self._add_network(entry)
|
||||
LOG.info("Network VLAN ranges: %s", self.network_vlan_ranges)
|
||||
LOG.info(_("Network VLAN ranges: %s"), self.network_vlan_ranges)
|
||||
|
||||
def _add_network_vlan_range(self, physical_network, vlan_min, vlan_max):
|
||||
self._add_network(physical_network)
|
||||
@ -258,10 +260,11 @@ class OVSQuantumPluginV2(db_base_plugin_v2.QuantumDbPluginV2,
|
||||
tun_min, tun_max = entry.split(':')
|
||||
self.tunnel_id_ranges.append((int(tun_min), int(tun_max)))
|
||||
except ValueError as ex:
|
||||
LOG.error("Invalid tunnel ID range: '%s' - %s. "
|
||||
"Agent terminated!", entry, ex)
|
||||
LOG.error(_("Invalid tunnel ID range: "
|
||||
"'%(range)s' - %(e)s. Agent terminated!"),
|
||||
{'range': entry, 'e': ex})
|
||||
sys.exit(1)
|
||||
LOG.info("Tunnel ID ranges: %s", self.tunnel_id_ranges)
|
||||
LOG.info(_("Tunnel ID ranges: %s"), self.tunnel_id_ranges)
|
||||
|
||||
# TODO(rkukura) Use core mechanism for attribute authorization
|
||||
# when available.
|
||||
@ -354,14 +357,14 @@ class OVSQuantumPluginV2(db_base_plugin_v2.QuantumDbPluginV2,
|
||||
else:
|
||||
segmentation_id = None
|
||||
else:
|
||||
msg = _("provider:network_type %s not supported" % network_type)
|
||||
msg = _("provider:network_type %s not supported") % network_type
|
||||
raise q_exc.InvalidInput(error_message=msg)
|
||||
|
||||
if network_type in [constants.TYPE_VLAN, constants.TYPE_FLAT]:
|
||||
if physical_network_set:
|
||||
if physical_network not in self.network_vlan_ranges:
|
||||
msg = _("unknown provider:physical_network %s" %
|
||||
physical_network)
|
||||
msg = _("Unknown provider:physical_network "
|
||||
"%s") % physical_network
|
||||
raise q_exc.InvalidInput(error_message=msg)
|
||||
elif 'default' in self.network_vlan_ranges:
|
||||
physical_network = 'default'
|
||||
@ -425,7 +428,7 @@ class OVSQuantumPluginV2(db_base_plugin_v2.QuantumDbPluginV2,
|
||||
self._extend_network_dict_provider(context, net)
|
||||
self._extend_network_dict_l3(context, net)
|
||||
# note - exception will rollback entire transaction
|
||||
LOG.debug("Created network: %s", net['id'])
|
||||
LOG.debug(_("Created network: %s"), net['id'])
|
||||
return net
|
||||
|
||||
def update_network(self, context, id, network):
|
||||
|
Loading…
Reference in New Issue
Block a user